![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Непрямоугольная форма или как без этого обойтись: [D6, Win95/98]
greenrul © (2002-09-07 19:36:00)Пишу Launchpad, это такая панелька всплывающая с кнопками, кликая на которые запускается файл/пр. - только вот там есть папки, при нажатии на которые вываливается еще несколько кнопок -
*
*
х - папка
*
*
*
х*** - после нажатия на папке
*
*
Вопрос - как сделать, чтобы пространство, не знаятое кнопками, было прозрачным, и если в этом месте кликнуть, выбиралась не моя форма, а то, что лежит "под" ней.
Romkin (2002-09-09 15:08:00) [1]Блин, точно, объединение - это OR, а AND - пересечение
MBo (2002-09-09 15:04:00) [2]x1:=CreateRectRgn(1,1,100,100);
x2:=CreateRectRgn(100,100,200,200);
CombineRgn(x1,x1,x2,RGN_OR);//объединение
SetWindowRgn(Handle,x1,true)
greenrul (2002-09-09 14:59:00) [3]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)
не помогает
Romkin (2002-09-09 14:53:00) [4]CombineRgn(x1,x1,x2,RGN_AND); - попробуй, так должно пройти
Виктор Щербаков (2002-09-09 14:51:00) [5]greenrul © (08.09.02 11:58)
А где ты пишешь этот код?
greenrul (2002-09-09 14:47:00) [6]H*E*L*P
greenrul (2002-09-08 11:58:00) [7]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)
то всеравно не объединяет...
kex86 (2002-09-08 05:20:00) [8]тебе на примере?
Елси да,то потом отвечу,(спать хочу),
Если нет, то делаешь регион и показываешь его (setwindowsrgn, кажется)
Тупой (2002-09-07 22:18:00) [9]TSohoRegionForm
Юрий Зотов (2002-09-07 21:06:00) [10]Нужно делать "дырявую" форму.
См. тему regions в справке API. В частности, GetWindowRgn, CombineRgn, SetWindowRgn, DeleteObject.
Алгоритм - проход в цикле по кнопкам, создание сложного региона и его назначение окну формы.