Главная страница
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.026 c
1-40442
Balkon
2003-09-30 17:36
2003.10.13
Как сделать


3-40261
Lika
2003-09-23 09:27
2003.10.13
SQL


1-40377
Spermozavrik
2003-10-01 00:00
2003.10.13
Передача нетипизированных объектов через web services


1-40399
Igor Mish
2003-09-30 15:05
2003.10.13
ini файлы


1-40350
DNSokol
2003-10-01 17:33
2003.10.13
Свой компонент контрола