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

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

Создание кнопки на панели в RunTime [D6, Win2k]


VDen ©   (2002-06-19 21:34:00) 

при создании TSpeedButton на TPanel в рантайме SpeedButton почему-то остается невидимым.

t := TSpeedButton.Create(Form1.Panel1);
with FSpeedButton do begin
parent := Form1.Panel1;
Name:="but1"
SetBounds(25, Form1.ClientHeight - 28, 55, 23);
visible:=true;
end;

если Panel1 заменить на Form1, а панель убрать, то все получается... У панели Align=alBottom.


MBo   (2002-06-20 10:09:00) [1]

;)))


VDen   (2002-06-20 10:07:00) [2]

Cпасибо вам, MBo.


MBo   (2002-06-20 09:43:00) [3]

для начала попробуй
SetBounds(5,5,25,25);


VDen   (2002-06-20 09:34:00) [4]

Извиняюсь, не подумал. Но кнопка все равно не показывается!


Игорь Шевченко   (2002-06-20 09:20:00) [5]

У любого наследника TControl есть свойство ClientHeight


VDen   (2002-06-20 09:14:00) [6]

2AK-47 Просто торопился, FSpeedButton не поменял на t(т.е. в программе у меня все так же как и у вас). Далее, форма находится в одном модуле, а процедура создания кнопки - в другом(по поводу TForm1.Button1Click).

>SetBounds(25, Panel1.ClientHeight - 28, 55, 23);
У панели нет свойства ClientHeight!!!!!


AK-74   (2002-06-19 21:49:00) [7]

В коде синт. и др. ошибки. Вот так должно работать:
procedure TForm1.Button1Click(Sender: TObject);

begin
t := TSpeedButton.Create(Form1.Panel1);
with t do begin
parent := Panel1;
Name:="but1";
SetBounds(25, Panel1.ClientHeight - 28, 55, 23);
visible:=true;
end;
end;


Наверх

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