![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
form [D6, Win95/98, WinME]
angus © (2002-09-06 07:46:00)Можно ли сделать прозрачную форму?
Vlad1 (2002-09-12 19:31:00) [1]Это работает:
interface
...................
public
{...}
protected
procedure CreateParams(var Params:TCreateParams);override;
...................
implementation
...................
procedure TForm1.CreateParams(var Params:TCreateParams);
begin
inherited;
Params.ExStyle:=Params.ExStyle or WS_EX_TRANSPARENT;
end;
...................
lenin (2002-09-06 14:42:00) [2]
> BOA_KAA © (06.09.02 11:47)
Это действует только с Win2000 и XP
> Dimk (06.09.02 12:06)
Я сразу после SetWindowRgn
MaraVit (2002-09-06 14:39:00) [3]Мужуки! У меня есть код прозрачной формы, но сюда он не помещается. Так что мыльте, вышлю бандеролем!!!
mvit@ukrpost.net
Dimk (2002-09-06 12:06:00) [4]To Lenin
Сразу удалить или после удаления окна?
В доке пишут:
After a successful call to SetWindowRgn, the operating system owns the region specified by the region handle hRgn. The operating system does not make a copy of the region. Thus, you should not make any further function calls with this region handle. In particular, do not close this region handle.
Вот и сомневаюсь. Ты то как делал?
BOA_KAA (2002-09-06 11:47:00) [5]Вообще-то достаточно просто установить AlphaBlend для формы в True, и уменьшить значение AlphaBlendValue. 0 - полностью прозрачная форма
lenin (2002-09-06 11:45:00) [6]Его желательно удалить: DeleteObject(RGN)
Dimk (2002-09-06 11:36:00) [7]Попробовал - работает класс!
Только вопрос: после SetWindowRgn(HWND, RGN, ... )
о RGN можно забыть? То есть удалять его после закрытия окна не надо чтобы ресурсы освободились? А что будет если несколько раз менять регион окна? Не будет потери ресурсов если не удалять использованные регионы?
krotik (2002-09-06 09:55:00) [8]> lenin
> Можно не только обрезание, можно менять форму формы
> SetWindowRgn
Я это и имел в виду - неправильно выразился просто
lenin (2002-09-06 09:41:00) [9]
> sicoz © (06.09.02 09:39)
Сразу XP
sicoz (2002-09-06 09:39:00) [10]Переходи на NT или 2000 - в Д6 альфа прозрачность формы вынесена в инспектор объектов. Изменяй и радуйся.
lenin (2002-09-06 09:17:00) [11]
> krotik © (06.09.02 09:14)
Можно не только обрезание, можно менять форму формы
SetWindowRgn
krotik (2002-09-06 09:14:00) [12]Для Win2K и выше можно делать полупрозрачную форму.
А для всех остальных виндов можно делать обрезание формы по краям.
Если интересно как, напиши мыло на krotik@omen.ru -
вышлю свои исходники для D5. Или ищи в FAQах - там все есть.
RV (2002-09-06 08:44:00) [13]Win95/98, WinME
?
у меня не получилось
Song (2002-09-06 08:38:00) [14]Так только начиная от w2k
Smithson (2002-09-06 08:35:00) [15]не работает :-(((
Song (2002-09-06 08:08:00) [16]TForm.Canvas.Brush.Style:=bsClear;