Главная страница
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.011 c
3-60990
Игорь С.
2002-08-29 11:20
2002.09.19
расширения MS SQL 7.0


1-61089
манечка
2002-09-06 13:21
2002.09.19
Единицы измерения


7-61322
IlyaA
2002-07-10 14:08
2002.09.19
CodPage 866 To Win1251


8-61224
Wadim
2002-05-22 00:30
2002.09.19
Media Player - проблемы (((


3-61010
n\a
2002-08-28 00:06
2002.09.19
Access vs Delphi