Вниз
Скачать: CL | DM;

Подскажите правильно ли я делаю кнопки   Найти похожие ветки 

← →
Alex_MIB1 ©   (2002-06-15 20:22) [0]

Дело в том, что я с Delphi работаю не очень много но была кое-какая работа, мне пришлось делать кнопки на форме, которые должны были быть абсолютно разной формы- треугольные, круглые и т.д. Я придумал вот что: взял компонент Image а сверху поместил Label(его я сделал прозрачным, чтобы было видно картинку). Вы спросите зачем нужен Label, да потому что только у него я нашел событие OnMouseEnter и OnMouseLeave. Соответственно в событиях описал: при попадании курсора мыши в Label - Image"y присвоить другую картинку, при отводе мыши - вернуть прежнюю картинку.

Скажите правильно ли это, я уверен что есть способы полегче, да и правельней чем мой, так как я опирался лишь на свою фантазию.


← →
MJH ©   (2002-06-16 08:17) [1]

на улице:
- скажите,а правильно ли я иду?
- =:-[===]


← →
SI-riuss ©   (2002-06-16 14:07) [2]

MJH прав. Главное - не боись. Все правильно если оно рабтает.


← →
liho26 ©   (2002-06-17 12:51) [3]

Привет, есть еще вариант изменения размеро-форм кнопок. Например делать конпы эллипсовидные. Вот код. Он достаточно прост. Если есть вопросы - пиши на мыло.

procedure TForm1.Button1Click(Sender: TObject);
Var
btnrgn: hRgn;
begin
Button1.Brush.Style := bsSolid; //bsclear;
{ делаем круг формы }
GetWindowRgn(Button1.Handle, btnrgn);

{ удаляем старый объект }
DeleteObject(btnrgn);
{ делаем прямоугольник кнопки }
button1.Height := 30;
Button1.Width := Button4.Height;
{ создаём круглую форму кнопки }
btnrgn := CreateRoundRectRgn(1, 1, Button1.Width - 1,
Button1.height - 1, Button1.width, Button1.height);

// btnrgn := CreateEllipticRgn(1,10,Button1.Width -
// 1,Button1.height - 1);
{ устанавливаем новое круглое окно }
SetWindowRgn(Button1.Handle, btnrgn, TRUE);
end;

Расскоментарь строки с CreateEllipticRgn - получишь эллиптический кноп.Обработчики у кнопки стандартные.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
1-56021
^Sanya
2002-10-06 21:43
2002.10.17
Задолбался....


3-55922
Bi
2002-09-27 12:43
2002.10.17
Почему в ADOConnection обязательно вылезает поле - подключения?


6-56256
NTDim
2002-08-15 08:49
2002.10.17
Статус сетевой карты (есть сеть - нет сети) ?


14-56338
Ag2002
2002-09-25 19:22
2002.10.17
Установка


14-56341
Ш-К
2002-09-24 15:04
2002.10.17
Хостинг.




   Наверх