Вниз
Скачать: CL | DM;

Обновление окна   Найти похожие ветки 

 
Felix_the_cat   (2003-03-29 04:44) [0]

Такой вопрос:
Из своей программы меняю у папки иконку, но обновление происходит только, когда я перехожу в окно Explorer"a и нажимаю F5. Пробовал и SendMessage отправлять, и в реестре UpdateMode менял - не хочет оно обновляться само. Может, кто знает, как это лечится? Заранее спасибо.


 
Almaz ©   (2003-03-30 04:59) [1]

Попробуйте так:

procedure TForm1.Button1Click(Sender: TObject);
var
Save: String;
Dummy: Cardinal;
begin
with TRegistry.Create do
try
RootKey := HKEY_CURRENT_USER;
if not OpenKey("Control Panel\Desktop\WindowMetrics", FALSE) then Abort;
Save := ReadString("Shell Icon size");
if Save = "" then Abort;
WriteString("Shell Icon size", IntToStr(StrToInt(Save) - 1));
SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, SPI_SETNONCLIENTMETRICS, 0, SMTO_ABORTIFHUNG, 10000, Dummy);
WriteString("Shell Icon size", Save);
SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, SPI_SETNONCLIENTMETRICS, 0, SMTO_ABORTIFHUNG, 10000, Dummy);
finally
Free;
end;
end;


Удачи.


 
Felix_the_cat   (2003-03-30 13:04) [2]

Огромное спасибо, Almaz - всё прекрасно работает.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
3-94747
Andrey-k
2003-05-10 20:40
2003.05.29
Win9.x и клиент InterBase для них


14-95071
the great man
2003-05-10 06:59
2003.05.29
WebBrowser


7-95151
v.topalov
2003-03-28 16:26
2003.05.29
Сервис для COM порта


14-95000
NewN
2003-05-08 08:30
2003.05.29
Навеяло...


14-95115
DiamondShark
2003-05-12 12:58
2003.05.29
Задачка




   Наверх