![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как програмно нажать на кнопочку? [D7]
Bolt © (2006-12-16 10:53:00)Скажите пожалста, если кто знает.
Я программно описал форму и кнопку на ней. Теперь незнаю как при нажатии на кнопку (которую создал программно) выполнить какоенибудь действие, например вывести сообщение....
Спасибо!
VadimSpb (2006-12-17 23:42:00) [1]
> Программа разработанна в СТИЛЬНОМ интерфейсе, если пользоваться
> стандартными Messaga-ми вся красота теряеться.
Супер ИЗВРАЩЕНИЕ. Что мешает сделать свои мессаги и все что надо??? Следует из отсутствия знаний и опыта. Как насчет отладки dll? ;-))
> Будете переписывать вечно exe-к?
И не надо ничего переписывать :-))))
> Вывод, ИЗВРАЩЕНИЕ - все выше высказавшиеся фразой ИЗВРАЩЕНИЕ
Удачи в ИЗВРАЩЕНИЯХ ;-))))))
tesseract (2006-12-17 23:30:00) [2]
> Bolt (17.12.06 23:22) [8]
Поиском по форуму пройдись на предмет "Форма в DLL". Моментально возникнет желание перериовать проект хотя бы на com/ole.
> MessageForm:=TForm.Create(Application);
А Application откуда в эту функцию попадает?
Bolt (2006-12-17 23:22:00) [3]Спасибо за ваше мнениние...
Вот например ситуация....Программа разработанна в СТИЛЬНОМ интерфейсе, если пользоваться стандартными Messaga-ми вся красота теряеться. Далее, в зависимости от dll меняеться интерфейс, или скинн...Далее, легко урезать функции программы, заменив dll, или наделить....Будете переписывать вечно exe-к? Вывод, ИЗВРАЩЕНИЕ - все выше высказавшиеся фразой ИЗВРАЩЕНИЕ
VadimSpb (2006-12-17 23:14:00) [4]
> А по этому к проге вешаю свою DLL в которой размещаю все
> необходимые функции, процедуры, ресурсы и системный формы
ИЗВРАЩЕНИЕ.
Bolt (2006-12-17 21:09:00) [5]Ну как сказать! Дело в том что, я пишу программу, и думаю что пользоваться стандартным Message-м не очень красиво, хочу что бы Message был такова же стиля как и форма, с Rx-выми кнопочками и так далее...
А по этому к проге вешаю свою DLL в которой размещаю все необходимые функции, процедуры, ресурсы и системный формы
ProgRAMmer Dimonych (2006-12-17 21:04:00) [6]Боюсь даже спрашивать, зачем нужно такое извращение (в смысле через DLL)...
Bolt (2006-12-17 18:29:00) [7]А как реализовать в DLL?
Я пишу так
function ShowMyMessage(Caption:PChar;Msg:PChar):Boolean;StdCall;
var
MessageForm : TForm;
BtnYes,BtnNo:TRxSpeedButton;
MsgLabel:TLabel;
procedure BtnNoClick(Sender: TObject);
begin
MessageForm.Close;//Процедура которая будет выполняться при нажатии на кнопку "НЕТ"
end;
begin
MessageForm:=TForm.Create(Application);
MsgLabel:=TLabel.Create(MessageForm);
MsgLabel.Parent:=MessageForm;
MsgLabel.Top:=FormPic.Top+Round(FormPic.Height/2);MsgLabel.Left:=FormPic.Left+FormPic.Width+Otstup;
MsgLabel.Caption:=StrPas(Msg);
MessageForm.Caption:=StrPas(Caption);
MessageForm.Position:=poScreenCenter;
...
BtnNo:=TRxSpeedButton.Create(MessageForm);
BtnNo.Parent:=MessageForm;
BtnNo.OnClick:=BtnNoClick;// Присваиваю ПРОЦЕДУРЫ события ONCLICK кнопки (ВЫДАЕТ ОШИБКУ)
BtnNo.Flat:=True;BtnNo.Transparent:=True;
BtnNo.Width:=105;BtnNo.Height:=33;
BtnNo.Width:=105;BtnNo.Height:=33;
...
MessageForm.ShowModal;
end;
Но НЕ РАБОТАЕТ, что то не так да?
>>DEATH<< (2006-12-16 11:16:00) [8]нажми два раза на кнопку и пиши то что должно произойти
>>DEATH<< (2006-12-16 11:16:00) [9]Удалено модератором
Savek (2006-12-16 11:15:00) [10]После создания кнопки надо присвоить ей обработчик
private
procedure MyClick(sender : TObject);
...
...
Button1:=TButton.Create(Self);
...
Button1.OnClick:=MyClick;
А в процедуре MyClick описываешь желаемое действие