Форум: "WinAPI";
Текущий архив: 2002.08.15;
Скачать: [xml.tar.bz2];
Внизфон под текстом у иконак на рбочем столе Найти похожие ветки
← →
Igit (2002-06-06 22:05) [0]Как мне на чистом WinApi сделать фон под текстом у иконак на рбочем столе прозрачным. Тот совет в форуме не работает
(по подробнее, pls:)
← →
easy (2002-06-07 16:22) [1]...вот кусочек юнита:
var
Form1: TForm1;
Const LVM_FIRST = 4096;
Const LVM_GETTEXTBKCOLOR = 4133;
Const LVM_SETTEXTBKCOLOR = 4134;
Const CLR_NONE = 4294967295;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var SysListView32,SHELLDLLDefView:hwnd;
begin
SHELLDLLDefView := FindWindowEx(FindWindow("Progman", "Program Manager"), 0, "SHELLDLL_DefView", nil);
If SHELLDLLDefView <> 0 Then
SysListView32 := FindWindowEx(SHELLDLLDefView, 0, "SysListView32", nil);
If SysListView32 <> 0 Then
begin
If SendMessage(SysListView32, LVM_GETTEXTBKCOLOR, 0, 0) <> CLR_NONE Then
begin
SendMessage(SysListView32, LVM_SETTEXTBKCOLOR, 0, CLR_NONE);
InvalidateRect(SysListView32, 0, True);
UpdateWindow(SysListView32);
End;
End;
end;
...может, немного кривовато, наспех сляпал, но зато работает.8))
← →
easy (2002-06-07 17:45) [2]...прозрачность фона надо контролировать постоянно...
Так что лучше всю эту фишку засунуть в тимер, или ставить хук на LVM_SETTEXTBKCOLOR...
← →
Igit (2002-06-07 19:33) [3]Работает:)) А как цвет текста установить?
← →
SPeller (2002-06-08 03:17) [4]2easy (07.06.02 17:45)
> ...прозрачность фона надо контролировать постоянно...
Умнея Microangelo делает фон прозрачным и ставит свой цвет. Убиваю его, а ярлыка всё-равно остаются прежними. Может он внедряет свой поток куда-нить?
← →
easy (2002-06-08 16:49) [5]to Igit: LVM_SETTEXTCOLOR
← →
Igit (2002-06-09 16:43) [6]Чему равен:
Const LVM_SETTEXTCOLOR = ????;
и где его писать?
← →
Igit (2002-06-09 16:45) [7]Я не очень (вообще почти) понимаю WinApi :((
← →
easy (2002-06-10 15:48) [8]LVM_SETTEXTCOLOR:=4132
← →
easy (2002-06-10 16:31) [9]SendMessage(SysListView32, LVM_SETTEXTCOLOR, 0, clRed);
← →
cdaDmitriy (2002-06-11 19:37) [10]Все работает <easy> спасибо
но все константы
Const LVM_FIRST = 4096;
Const LVM_GETTEXTBKCOLOR = 4133;
Const LVM_SETTEXTBKCOLOR = 4134;
Const CLR_NONE
LVM_SETTEXTCOLOR
описаны в модуле Commctrl;
включаешь
uses Commctrl;
и OK
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.08.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c