Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];

Вниз

Куча кнопок   Найти похожие ветки 

 
ATLANTIDO   (2002-04-17 23:20) [0]

Ситуация такая - в процессе работы создется много конопок, функция которых почти однинакова - выдавать сообщение. Т.е. кнопка1 при нажатии выдает сообщение "1" , кнопка2 - "2" и т.д. Как мне это организовать ? Кнопки создаются прогрммно.
2) Как правильно освобождать память при динамическом создании обьектов ?
Создаю:

BitBtns[j]:=TBitBtn.Create(TabSheets[i-1]);
BitBtns[j].Left:=NextX; BitBtns[j].Top:=NextY;
BitBtns[j].Width:=100; BitBtns[j].Height:=100;......


 
Walker   (2002-04-18 04:58) [1]

1)
пишешь процедуру

procedure TForm1.Bitnt_X_Click(Sender: TObject);
var
st: string;
begin
if (Sender is TBitBtn) then
begin
st:="Кнопка "+IntToStr((Sender as TBitBtn).Tag);
Application.MessageBox(PChar(st), "", 0);
end;
end;

затем в цикле...

BitBtns[j].Tag:=j;
BitBtns[j].OnClick:=TForm1.Bitnt_X_Click;

2) если ты при создании указываешь родителя - Owner (а ты это указываешь - TabSheet), то можно не беспокоится, при уничтожении TabSheet сам удалит всё что на нём расположено (точнее своих детей)

но можно удалять и так:
BitBtns[j].Free;


P.S.: Можно обойтись и без массива BitBtns


 
ATLANTIDO   (2002-04-18 20:24) [2]

Оператор BitBtns[j].OnClick:=TForm1.Bitnt_X_Click;
приводит к ошибке "Incompatible types: "TNotifyEvent" and "Procedure"".


 
Poirot   (2002-04-18 20:56) [3]

у вас процедура должна быить определена в нутри класса TForm1 в разделе напр Паблик....
И всё работает как надо... тока-что проверил...


 
ATLANTIDO   (2002-04-18 21:01) [4]

Спасибо, помогло.


 
Poirot   (2002-04-18 21:03) [5]

Хаха.. я ошибку нашёл.... Вы зачем от класса её берёте...
:=TForm1.блаблабла
надо просто :=длабла


 
ATLANTIDO   (2002-04-18 21:22) [6]

а я так и сделал ! Спасибо!



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.004 c
3-2474
sashag
2002-04-10 13:35
2002.05.02
Траблы со чтением конечных пробелов из строкового поля


1-2547
Gayrus
2002-04-18 03:06
2002.05.02
TreeView и Array


3-2479
Vitek_m
2002-04-11 12:09
2002.05.02
DLL + DB


1-2574
Varg
2002-04-19 15:04
2002.05.02
Событие Shutdown


1-2618
anod
2002-04-20 11:02
2002.05.02
Свойство Style TFont





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский