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

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

Создание кнопки программно


Страницы:   1 2 3 4

Mariya ©   (2007-10-02 15:27:00) 

Подскажите мне, пожалуйста, как создать динамически визуальный компонент (кнопку) на форме в Delphi.


Mariya   (2007-10-04 07:30:00) [21]

Доброго нового дня! Это все получилось!

> Алилуйя!

Осталось почти последнее, что я упустила, а как программно задать размеры формы? На которой все это и рисуется. Я пишу так:

Form1.Caption:=Ini.ReadString('Form', 'Cap', 'Навигатор');
Form1.Height:=Ini.ReadInteger('Form', 'Height', 500);
Form1.Width:=Ini.ReadInteger('Form', 'Width', 700);
Игнорирует, не ставит по умолчанию 500 на 700.

А! Еще, насчет меню, само меню создала, а как вкладки прописать?


Dib@zol   (2007-10-03 22:22:00) [22]

> Юрий Зотов ©   (03.10.07 21:46)

Понимаю. И даже сам другим частенько об этом напоминаю. А сегодя вот вдруг накатило... Ну туплю сегодня, ну отосплюсь и всё пройдёт...


Юрий Зотов   (2007-10-03 21:46:00) [23]

> Dib@zol ©   (03.10.07 18:45) [41]

Тогда зачем давать начинающим советы уровня API? Вы понимаете, что такими советами Вы только их запутываете и ничего больше?


korneley   (2007-10-03 18:57:00) [24]

Ну утомила уже эта бодяга (не губка)... пишешь метод типа:
TForm1.ButtonClick(Sender: TObject), в котором вызываешь, че-нить типа [30], создаешь кнопку, пусть это будет Button1, далее:
Button1.OnClick := ButtonClick;По нажатию Button1 все, что в теле ButtonClickисполнится... Алилуйя!


Dib@zol   (2007-10-03 18:45:00) [25]

Может и есть. Но я полный дуб в ВЦЛ, поэтому дело за вами.


Zeqfreed   (2007-10-03 18:39:00) [26]

> Dib@zol ©   (03.10.07 17:07) [38]

Ой, мамочки.


Юрий Зотов   (2007-10-03 18:38:00) [27]

> Dib@zol ©   (03.10.07 17:07) [38]

Скажите, а нет ли способа попроще? Может быть, есть? И, может быть, даже намногопроще?


Dib@zol   (2007-10-03 17:07:00) [28]

function Obrabotcik_dinamiceskoi_knopki_Button1(hWnd: HWND; Msg: LongInt; wParam, lParam: Longint): longInt; stdcall;
begin
 if Msg = BM_CLICK then begin
   Zapusk_kakoynibud_progi;
 end;
 Result:=CallWindowProc(Pointer(Button1.Tag), hWnd, Msg, wParam, lParam);
end;

...

Button1.Tag:=SetWindowLong(Button1.Handle, GWL_WNDPROC, LongInt(@Obrabotcik_dinamiceskoi_knopki_Button1));


Kolan   (2007-10-03 17:01:00) [29]

> И все же как программно прописать на динамически созданной
> кнопке, что она должна открыть какой-нибудь экзешник!

Назначить им обработчики нажатия…


Mariya   (2007-10-03 16:52:00) [30]

И все же как программно прописать на динамически созданной кнопке, что она должна открыть какой-нибудь экзешник!


Dib@zol   (2007-10-03 16:25:00) [31]

эт я в смысле ответил на [30].


Dib@zol   (2007-10-03 16:25:00) [32]

> Наймите программиста...

Наймите меня!!! гыгыгы...

Создать свою оконную процедурку для кнопок, через SetWindowLong повесить её поверх основной и по BM_CLICK делать то что надо.


Mariya   (2007-10-03 16:05:00) [33]


> Наймите программиста...


Ох, нелегкая жизнь :((, я им сейчас здесь и являюсь!!!


Плохиш   (2007-10-03 14:33:00) [34]


> Mariya   (03.10.07 14:16) [30]

Может, ну его нафик, это программированние?
Наймите программиста...


Сергей М.   (2007-10-03 14:25:00) [35]


> высчитывать математически


Мдя..

Вычерчивать геометрически
Выпекать кулинарически
Вырождаться генеалогически
..
)


Mariya   (2007-10-03 14:16:00) [36]


> D6

Пишу в D6 пришлось высчитывать математически, получилось. Все встало на место. Кнопки я динамически создала, как прописать в них правильно:
ShellExecute(handle, nil, 'WINWORD.EXE', NiL, NiL, SW_SHOWNORMAL);
в bottone если создавать его с панели, то так, а как в динамически созданном?


Palladin   (2007-10-03 13:38:00) [37]


> {RASkov} ©   (03.10.07 13:18) [28]

Не знаю как в остальных Delphi, но в D6 TLabel таким свойством не обладает


{RASkov}   (2007-10-03 13:18:00) [38]

> чтобы было в центре сверху формы

Выставить метке Align = alTop и Alignment = taCenter


Mariya   (2007-10-03 12:44:00) [39]


> clickmaker


> lbl.Font.Style := [fsBold];

работает, спасибо.


clickmaker   (2007-10-03 10:37:00) [40]


> чтобы было в центре сверху формы

элементарная арифметика

> должен быть жирный, не знаю как

lbl.Font.Style := [fsBold];


Страницы:   1 2 3 4

Наверх

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