Главная страница
    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
14-2662
Злой
2002-03-27 09:05
2002.05.02
Приветствую!!! Не подскажите как осуществить такую идею (с media в дельфях ни когда не работал) Создаю список из mp3 файлов и нужно чтобы в Label отображалось общее время в списке файлов или отдельно выбранного файла. Так вот, загрузку Mp3 предположим в L


3-2487
Termik
2002-04-11 14:11
2002.05.02
Как удалить записи ?


4-2724
samos
2002-02-27 11:28
2002.05.02
Еще раз про реестр


1-2549
vicha
2002-04-18 23:46
2002.05.02
передача файловой переменной в функцию?


4-2711
ebeden
2002-02-28 01:37
2002.05.02
Click по кнопке





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский