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

Вниз

Непрямоугольная форма или как без этого обойтись:   Найти похожие ветки 

 
greenrul ©   (2002-09-07 19:36) [0]

Пишу Launchpad, это такая панелька всплывающая с кнопками, кликая на которые запускается файл/пр. - только вот там есть папки, при нажатии на которые вываливается еще несколько кнопок -

*
*
х - папка
*

*
*
х*** - после нажатия на папке
*
*


Вопрос - как сделать, чтобы пространство, не знаятое кнопками, было прозрачным, и если в этом месте кликнуть, выбиралась не моя форма, а то, что лежит "под" ней.


 
Юрий Зотов ©   (2002-09-07 21:06) [1]

Нужно делать "дырявую" форму.

См. тему regions в справке API. В частности, GetWindowRgn, CombineRgn, SetWindowRgn, DeleteObject.

Алгоритм - проход в цикле по кнопкам, создание сложного региона и его назначение окну формы.


 
Тупой   (2002-09-07 22:18) [2]

TSohoRegionForm


 
kex86 ©   (2002-09-08 05:20) [3]

тебе на примере?
Елси да,то потом отвечу,(спать хочу),
Если нет, то делаешь регион и показываешь его (setwindowsrgn, кажется)


 
greenrul ©   (2002-09-08 11:58) [4]

x1:=CreateRectRgn(1,1,100,100);
x2:=CreateRectRgn(100,100,10,10);
x3:=0;
CombineRgn(x3,x1,x2,RGN_AND);
SetWindowRgn(Form1.Handle,x3,true)

- даже если x3:=CreateRectRgn(1,1,10,10)

то всеравно не объединяет...


 
greenrul ©   (2002-09-09 14:47) [5]

H*E*L*P


 
Виктор Щербаков ©   (2002-09-09 14:51) [6]

greenrul © (08.09.02 11:58)
А где ты пишешь этот код?


 
Romkin ©   (2002-09-09 14:53) [7]

CombineRgn(x1,x1,x2,RGN_AND); - попробуй, так должно пройти


 
greenrul ©   (2002-09-09 14:59) [8]

2Виктор Щербаков: Button1.OnClick
2Romkin:
x1:=CreateRectRgn(1,1,100,100);
x2:=CreateRectRgn(100,100,10,10);
CombineRgn(x1,x1,x2,RGN_AND);
SetWindowRgn(Form1.Handle,x1,true)


не помогает


 
MBo ©   (2002-09-09 15:04) [9]

x1:=CreateRectRgn(1,1,100,100);
x2:=CreateRectRgn(100,100,200,200);
CombineRgn(x1,x1,x2,RGN_OR);//объединение
SetWindowRgn(Handle,x1,true)


 
Romkin ©   (2002-09-09 15:08) [10]

Блин, точно, объединение - это OR, а AND - пересечение



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
14-61276
Agent Smith
2002-08-22 20:20
2002.09.19
Разрешение на разработку ПО


4-61361
madmike
2002-07-18 11:01
2002.09.19
Реестр, не проходит функция, ХЕЛП.


14-61315
lak_b
2002-08-24 23:49
2002.09.19
память


1-61136
Andy BitOff
2002-09-06 14:03
2002.09.19
Виртуальный Grid


1-61163
Poirot
2002-09-07 11:56
2002.09.19
Как вшивают любой файл в BMP например!!!