Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Объявление переменной


Mariya ©   (2007-10-05 14:26:00) 

btn.OnClick:=ButtonClick1;
Procedure TForm1.ButtonClick1(Sender: TObject);
begin
 ShellExecute(handle, nil, 'winword.exe', NiL, NiL, SW_SHOWNORMAL);
end;
Подскажите, как winword.exe объявить переменной и написать в программе, чтобы в ини файле можно было менять, например на Excel.


Mariya   (2007-10-05 15:41:00) [1]

Спасибо, большое, Вы очень доступно все объяснили, буду пробывать!!!


Kolan   (2007-10-05 15:37:00) [2]

И там где ты кнопки создаешь пиши:

Btn := TMyButton.Create(…);
Btn.Program :=


Kolan   (2007-10-05 15:35:00) [3]

Имхо, ты не так придумала.

Надо так, имхо:
В ини есть секция
[Programs]
Prog1=Word
Prog2=Excel


А потомты читаешь эту секцию и для каждой строчкигенеришь кнопку.

А обработчик им назначаешь 1 и то же всем кнопкам.

И вот чтобы в обработчике вызвать нужную прогу, тебе надо ассоциировать(связать) кнопку со строкой.

Я бы сделал так:
Сделал бы наследника кнопки:
TMyButton = class(TButtn)
private
 FProgram: string;
public
 property Program: string read FProgram write FProgram;
end;


А обработчик такой:

Procedure TForm1.ButtonClick1(Sender: TObject);
begin
 if Sender is TMyButton then
   ShellExecute(handle, nil, (Sender as TMyButton).Program, NiL, NiL, SW_SHOWNORMAL);
end;


Mariya   (2007-10-05 15:24:00) [4]

Спасибо, но не поняла где теперь писать название программы, которая должна открыться в ини? а как правильно писать?


Ping   (2007-10-05 14:32:00) [5]

WinWordStr: string;

ShellExecute(handle, nil, PChar(WinWordStr), NiL, NiL, SW_SHOWNORMAL);


Наверх

Титульная страница Поиск, карта сайта Написать письмо