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

Вниз

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

 
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 вся ветка

Форум: "Media";
Текущий архив: 2002.10.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
1-56120
AndreyAG
2002-10-09 10:27
2002.10.17
Графики


14-56278
Undert
2002-09-20 23:21
2002.10.17
Владельцам сайтов на Народе.ру посвящается ...


1-56151
Zuvom
2002-10-06 14:30
2002.10.17
Файлы данных


14-56314
Igorek
2002-09-18 09:36
2002.10.17
Лучшая смотрелка архивов форумов


1-56091
HinderEvil
2002-10-07 19:30
2002.10.17
Как выполнить код из строки...





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