Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Вопросы по Delphi

Автор: Z MeZe
Дата сообщения: 16.12.2005 15:48
SergeBS
Спасибо за здоровую критику.
Ладно, перестаю толочь в ступе воду...
Спасибо всем. В принципе, ответы были ожидаемые (НО Я НАДЕЯЛСЯ, а чудес не бывает).

Цитата:
то лучше найди рядом кого-нибудь, кто уже проектировал базы данных

нету, НЕТУ в данный момент никого...

Все в общем, читаю.

Всем спасибо еще раз. Перестаю крутить счетчик по соему вопросу. Общих слов для меня уже достаточно. Спасибо

Добавлено:
SergeBS
Спасибо за здоровую критику.
Ладно, перестаю толочь в ступе воду...
Спасибо всем. В принципе, ответы были ожидаемые (НО Я НАДЕЯЛСЯ, а чудес не бывает).

Цитата:
то лучше найди рядом кого-нибудь, кто уже проектировал базы данных

нету, НЕТУ в данный момент никого...

Все в общем,.. читаю книги, запоминаю, делаю.

Всем спасибо еще раз. Перестаю крутить счетчик по соему вопросу. Общих слов для меня уже достаточно. Спасибо
Автор: SergeBS
Дата сообщения: 16.12.2005 15:50
Bill_PHO

Цитата:

Когда оно - true (по умолчанию), то Delphi тянет numeric из базы как Currency (у него нет иного формата для точных чисел),

Когда я учился в институте, то такого термина - точное число - не было по причине ненужности. Подозреваю (уверен) что и сейчас нет. Вывод - кому-то срочно нужно прочесть про точность вычислений в каком-нибудь букваре по численным методам. Знание архитектуры процессора в этом вопросе не поможет.
Автор: Notebook1000
Дата сообщения: 16.12.2005 19:39
Здравствуйте.
Подскажите,как сделать следующее:
В созданной программе есть объекты(ComboBox,RadioGroup,на котором расположены несколько RadioButton, и Image).
Нужно,чтобы при выборе пункта в ComboBox загружался соответствующее количество RadioButton в RadioGroup.Далее при выборе определенного RadioButton загружался определенный рисунок в Image
Автор: ax4start
Дата сообщения: 18.12.2005 10:09
искал, но видимо плохо, помогите, нужен исходник инсталятора(простого но не очень)...
Автор: Andy_Solo
Дата сообщения: 18.12.2005 10:25
Поставил Borland Developer Studio 2006 Architect Version 10.0.2151.25345 (релиз ShockISO, Packaged for DVD By Mad69Max). Все установилось нормально. Но в проектах Delphi под ASP.NET нет компонент Crystal Reports и ComponentOne. Хотя в Delphi 2005 они были. Это глюк данного перепакованного релиза или всей BDS 2006? Как у других также или нет?
Автор: volax
Дата сообщения: 18.12.2005 16:11
Notebook1000
procedure TForm1.ComboBox1Change(Sender: TObject);
var
i: Integer;
begin
for i := 0 to ComboBox1.ItemIndex do
RadioGroup1.Items.Add('Item' + IntToStr(i));
end;

procedure TForm1.RadioGroup1Click(Sender: TObject);
begin
Image1.LoadFromFile('C:\image' + IntToStr(RadioGroup1.ItemIndex) + '.bmp') ;
end;
Автор: DroN_S
Дата сообщения: 18.12.2005 22:19
Народ, помогите!!!!
Как загрузить картинку в DBGrid?
Делаю так

Код:
var
Price: TBitMap;
begin
Price := TBitMap.Create;
Price.Transparent := true;
if FileExists(GetEXEPath + 'List.bmp') then
Price.LoadFromFile(GetEXEPath + 'List.bmp');
end;
Автор: FluffyWite
Дата сообщения: 19.12.2005 01:51
Возможно глупый вопрос, но все же

Как создать таблицу (в книгах пишут что File/New/Table, но ...)
Автор: DroN_S
Дата сообщения: 19.12.2005 02:11
FluffyWite
какую таблицу?
Автор: Barakuda7
Дата сообщения: 19.12.2005 04:07
Вопрос к знатокам.
Как перекинуть текст из Юникода в Анси.
Автор: evle
Дата сообщения: 19.12.2005 04:53
Barakuda7
Utf8ToAnsi?
DroN_S

Цитата:
procedure TOrgAlphabet.OrgListDrawColumnCell


Цитата:
OrgList.Canvas.

Уверен что в нужном месте рисуешь?
Загружается ли картинка? Проверял?
Автор: LordMAD
Дата сообщения: 19.12.2005 07:46
Barakuda7
Если просто Unicode (UTF16) просто преобразуешь строку из WideString в String, если UTF8, то функцией UTF8toAnsi
Автор: DroN_S
Дата сообщения: 19.12.2005 10:17
evle

Цитата:
Уверен что в нужном месте рисуешь?

да, надо в гриде организаций...

Цитата:
Загружается ли картинка? Проверял?

проверял, кладу на форму Image, загрузаю, картинка есть, а в гриде нет...
Автор: Andrewfx
Дата сообщения: 19.12.2005 10:21
Вопрос по TMS component pack 3.7 для с++ builder personality в BDS 2006

Поставил с помощью delphi проекта (tmsd2006.bdsproj)... все норм заинсталлировалось - только при линковки любого приложения, в котором присутствуют компоненты TMS - не запускается - выбивает в cpu стек. А при запуске приложения без среды - пишет мол не может найти tms2006.bpl. Не пойму вроде во всех путях прописал?
Автор: Barakuda7
Дата сообщения: 19.12.2005 17:23
LordMAD
Спасибо за подсказку. Но проблема моя не решена. Мне нужно читать строки Unicode из файла, функция readln несовместима с PWideChar. Пробовал прировнять WideString к String, компилятор молчит, но результата нужного не получаю.
Объясняю задачу программы, нужно прочитать строку из файла в Unicode(UTF16) и переделать ее в Ansi, можешь помочь?
Автор: dyr farot
Дата сообщения: 19.12.2005 17:34
если readln не совместим -- берем тот же TFileStream и читаем сколько нужно.
потом имеющийся массив WideChar' ов переводим в массив AnsiChar' ов функцией WideCharToMultiByte()
Автор: DenSer
Дата сообщения: 19.12.2005 20:02
народ, помогите плиз разобраться в коде

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, MMSystem, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

function GetVolumeControl(aMixer: HMixer; componentType, ctrlType: Longint;
var mxc: TMixerControl): Boolean;
var
mxl: TMixerLine;
mxlc: TMixerLineControls;
rc: Longint;
begin
Result := False;
FillChar(mxl, SizeOf(TMixerLine), 0);
mxl.cbStruct := SizeOf(TMixerLine);
mxl.dwComponentType := componentType;
{Obtain a line corresponding to the component type}
rc := mixerGetLineInfo(aMixer, @mxl, MIXER_GETLINEINFOF_COMPONENTTYPE);
if rc = MMSYSERR_NOERROR then
begin
with mxlc do
begin
cbStruct := SizeOf(TMixerLineControls);
dwLineID := mxl.dwLineID;
dwControlType := ctrlType;
cControls := 1;
cbmxctrl := SizeOf(TMixerLine);
pamxctrl := @mxc;
pamxctrl^.cbStruct := SizeOf(TMixerControl);
end;
mixerGetLineControls(aMixer, @mxlc, MIXER_GETLINECONTROLSF_ONEBYTYPE);
rc := mixerGetLineControls(aMixer, @mxlc, MIXER_GETLINECONTROLSF_ONEBYTYPE);
Result := rc = MMSYSERR_NOERROR;
end;
end;

function SetVolumeControl(aMixer: HMixer; mxc: TMixerControl; volume: Longint): Boolean;
var
mxcd: TMixerControlDetails;
vol: TMixerControlDetails_Unsigned;
rc: MMRESULT;
begin
FillChar(mxcd, SizeOf(mxcd), 0);
with mxcd do
begin
cbStruct := SizeOf(TMixerControlDetails);
dwControlID := mxc.dwControlID;
cbDetails := SizeOf(TMixerControlDetails_Unsigned);
paDetails := @vol;
cMultipleItems := 0;
cChannels := 1;
end;
vol.dwValue := volume;
rc := mixerSetControlDetails(aMixer, @mxcd, MIXER_SETCONTROLDETAILSF_VALUE);
Result := rc = MMSYSERR_NOERROR;
end;

function InitMixer: HMixer;
var
Err: MMRESULT;
begin
Err := mixerOpen(@Result, 0, 0, 0, 0);
if Err <> MMSYSERR_NOERROR then
Result := 0;
end;

procedure SetMasterVolume(Vol:DWORD);
var
MyMixerHandle: HMixer;
MyVolCtrl: TMixerControl;
begin
MyMixerHandle := InitMixer;
if MyMixerHandle <> 0 then
try
FillChar(MyVolCtrl, SizeOf(MyVolCtrl), 0);
if GetVolumeControl(MyMixerHandle, MIXERLINE_COMPONENTTYPE_DST_SPEAKERS,
MIXERCONTROL_CONTROLTYPE_VOLUME, MyVolCtrl) then
begin
SetVolumeControl(MyMixerHandle, MyVolCtrl, Vol);
end;
finally
mixerClose(MyMixerHandle);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
SetMasterVolume(6000);
end;

end.

по нажатию кнопы уровень громкости устанавливается в 6000 (порядка 93% если память не изменяет), а вот можно ли как нить с помощью этого кода выловить текущий уровень громкости который был установлен ещё до запуска этого кода?
если нет, то подскажите плиз как это сделать.
интересует так называемый Master Volume.
заранее СЕНЬКС!
Автор: volax
Дата сообщения: 19.12.2005 22:31
DenSer
Вызывай по аналогии:
mixerGetControlDetails(aMixer, @mxcd, MIXER_SETCONTROLDETAILSF_VALUE);
Текущая громкость будет тут:
TMixerControlDetails_Unsigned(mxcd.paDetails)^.dwValue
Автор: LordMAD
Дата сообщения: 20.12.2005 07:15
Barakuda7


Код:
var
FileSize: Int64;
W: WideString;
S: string;
begin
with TFileStream.Create('c:\MyTemp\1.txt', fmOpenRead) do
try
FileSize := Seek(0, soFromEnd);
Seek(2, soFromBeginning);
SetLength(W, (FileSize + SizeOf(WideChar) - 3) div SizeOf(WideChar));
Read(PWideChar(W)^, FileSize);
finally
Free;
end;
S := W;
ShowMessage(S);
end;
Автор: VC7
Дата сообщения: 20.12.2005 09:28
Народ кто не будь смог заставить «ADOTable1.Locate» - искать с определенной записи в б\д. ?
Автор: LordMAD
Дата сообщения: 20.12.2005 09:56
VC7
А что конкретно не устраивает в работе TADOTable.Locate ?
Автор: VC7
Дата сообщения: 20.12.2005 10:39
LordMAD

Цитата:
А что конкретно не устраивает в работе TADOTable.Locate ?


Устраивает все ! просто нужно что бы поиск выполнялся не с первой записи а с определенной

Автор: DenSer
Дата сообщения: 20.12.2005 12:31
volax
спасибо! буду разбираться дальше

Народ, ещё такой вопрос: каким образом можно запустить стандартную панельку Volume Control из-под Delphi?
И ваапще, если есть у кого - поделитесь списком функций для запуска различного стандартного виндового борохла подобного рода.
Спасиб!
Автор: volax
Дата сообщения: 20.12.2005 14:28
DenSer
На самом деле, стандартный Volume Control - это екзешник, sndvol32.exe
То бишь, примерно так:

Цитата:

uses ShellAPI;
...
procedure TForm1.Button1Click(Sender: TObject);
var
MyWin: array[0..255] of Char;
const
Size: Integer = MAX_PATH;
begin
GetWindowsDirectory(MyWin, Size);
ShellExecute(
Form1.Handle,
'open',
'sndvol32.exe',
nil,
MyWin,
SW_SHOWNORMAL);
end;

Автор: DenSer
Дата сообщения: 20.12.2005 14:32
volax
хе ... пасиб! будем знать!
Автор: LordMAD
Дата сообщения: 20.12.2005 15:08
VC7
Делаешь то, что делает TADOTable.Locate, только сам: создаешь клон Recordset'а, настраиваешь как хочешь filter, получаешь bookmark и назначаешь его на исходный TADOTable.
Автор: Barakuda7
Дата сообщения: 20.12.2005 20:22
LordMAD
Спасибо огромное, все работает. Ты профессиональный программист или любитель?
Если профессиональный, то где работаешь, если любитель, то сколько программируешь?
Автор: LordMAD
Дата сообщения: 20.12.2005 20:46
Barakuda7
Не за что. См. личный ящик
Автор: FluffyWite
Дата сообщения: 21.12.2005 01:04
DroN_S
Для БД
Автор: DroN_S
Дата сообщения: 21.12.2005 02:42
FluffyWite

Цитата:
Для БД

не понял тебя?
да, у меня есть база, где есть поле прайс листа, при старте, происходит инициализация на прайс по связным таблицам, если прайс есть, то True, если нет то False. Так вот, для True мне надо прорисовать иконку.. из кода понятно...

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Вероятность одинакового CRC32


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.