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

Вниз

Окно не прямоугольной формы ...   Найти похожие ветки 

 
Максим   (2003-10-03 10:09) [0]

Подскажите как сделать окно не прямоугольной формы ......


 
HolACost! ©   (2003-10-03 10:12) [1]

goto FAQ on this site!


 
wal ©   (2003-10-03 10:13) [2]

Никак, окно всегда прямоугольное, можно ограничить область, в которой можно рисовать - остальная область прозрачная, причем не только для экрана, но и для мышки (т.е. при клике мышкой по этой области получется клик по тому, что лежит за окном). См. SetWindowRegion (вроде так, хелпа под рукой нету).


 
Yanis ©   (2003-10-03 10:38) [3]


var h:HRGN;
begin
h := CreateRoundRectRgn(0,0,Form1.Width,Form1.Height,20,20);
SetWindowRgn(Form1.Handle,h,True);

Вроде так, просто под рукой дельфей нету.


 
Максим   (2003-10-03 10:51) [4]

Yanis не работает как ты написал


 
Yanis ©   (2003-10-03 10:52) [5]

Что пишет ?


 
Максим   (2003-10-03 10:55) [6]

Да а по какому событию это происходит ???


 
Максим   (2003-10-03 11:00) [7]

Пишит она вот что:
Project Project.exe Raised Exeption class EAccessViolation with message "Access Violation at address 005B4dd6 in module "Project.exe". Resd of address 0000004C"


 
Yanis ©   (2003-10-03 11:11) [8]

У меня под рукой дельфи нету.
В onCreate запихни.


 
Максим   (2003-10-03 11:15) [9]

Yanis работает спасибо, только вот еще вопрос те углы которые она прячет там нем оконтовки как сделать а то не красиво получается


 
Yanis ©   (2003-10-03 11:27) [10]

Что за оконтовка ? Немного поточнеее можно ?


 
Rem ©   (2003-10-03 11:30) [11]

Рисуйте, молодой человек, рисуйте!


 
Rem ©   (2003-10-03 11:31) [12]

2 Yanis
Он хочет, чтобы у окна 3D рамка при этом была по закругленному краю...


 
Максим   (2003-10-03 11:32) [13]

Совершенно верно !!!!!!!!!


 
Yanis ©   (2003-10-03 11:33) [14]

Теперь понятно. Ну да, действительно рисовать, рисовать и ещё раз рисовать.


 
Rem ©   (2003-10-03 11:45) [15]

Установи для окна BorderStyle := bsNone, и прорисовывай свою рамку по всему контуру.

А еще у тебя возникнут вопросы с перемещением формы по экрану. Это решается просто:

procedure TYourForm.OnMouseDown(...);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND, $f012, 0);
end;

А с изменением размеров возни будет гораздо больше...


 
Yanis ©   (2003-10-03 11:50) [16]

Да и с рамкой тоже не мало возни появится.



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

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

Наверх




Память: 0.49 MB
Время: 0.032 c
14-40608
beginner_nostra
2003-09-25 01:36
2003.10.13
Siemens C55 в качестве GPRS модема


3-40267
АлеКс
2003-09-22 05:52
2003.10.13
ADO


14-40648
N169
2003-09-23 12:38
2003.10.13
Больной HDD и сбойные кластеры


14-40626
Zacho
2003-09-19 23:51
2003.10.13
Что читают программеры ?


1-40419
Vadim S
2003-09-30 17:36
2003.10.13
Какой Exec лучше?