Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.31;
Скачать: CL | DM;

Вниз

Как создать собственный графический интерфейс.   Найти похожие ветки 

 
doodle   (2004-10-15 12:33) [0]

Уважаемые мастера Delphi, я только учусь программировать и сейчас занят написанием программы для своего калькулятора. Хочу сделать кнопоки калькулятора круглыми и, чтобы когда указатель мыши заходит на кнопку она как бы нажималась. Картинки-то того и другого состояния кнопки я нарисовал, но как теперь этот процесс реализовать? OnMouseEnter здесь не поможет, не для того предназначен. Объект BitBtn картиночку берет, но дальше-то что, да и поле с двух сторон картинки оставляет зачем-то. Подскажите, пожалуйста, что сдесь можно сделать. Заранее, благодарствую.


 
-=SS=-   (2004-10-15 12:53) [1]

Если ты только учишся, то я бы для начала тебе посоветовалбы просто создать рабочую версию програмы а уже потом думать за интерфейс.
В принципе реализация твоего запроса может иметь вид.
Нужно переопределить класс TButton, добавив в него функции
OnMouseLeave, OnMouseEnter (OnMouseEnter здесь не поможет/// поможет)

И функциями SetWindowRgn() сделать кнопки кокой захочишь формы.


 
doodle   (2004-10-15 13:01) [2]

Благодарствую за ответ -=SS=-. А работающий исходник калькулятора я уже написал, потому и взялся за интерфейс.


 
-=SS=-   (2004-10-15 15:16) [3]

var
H:Hrgn;
T:TControlCanvas;
begin
T:=TControlCanvas.Create;
T.Control:=Button1;
H:=CreateEllipticRgn(0,0,60,20);
SetWindowRgn(Button1.Handle,H,True);
T.Brush.Color:=ClrED;
T.FillRect(Button1.ClientRect);
T.Free;

Еще немного фантазии и всё получится



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

Текущий архив: 2004.10.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.051 c
8-1091393561
Luuzuk
2004-08-02 00:52
2004.10.31
Запись аудиопотока с линейного входа звуковухи


3-1096527989
Виктор
2004-09-30 11:06
2004.10.31
Keyfields с двумя полями в Lookup поле.


8-1091344032
race1
2004-08-01 11:07
2004.10.31
mpeg header


10-1052229073
OIM
2003-05-06 17:51
2004.10.31
Fault Tolerant CORBA (+)


1-1097747889
V l a d i m i r
2004-10-14 13:58
2004.10.31
TRadioGroup