Вниз
Скачать: 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
1-94825
Raduga
2003-05-19 14:52
2003.05.29
определение объема занимаемой памяти


6-94998
dir_er_
2003-03-29 03:13
2003.05.29
dialup2api


3-94682
lightix
2003-05-07 10:03
2003.05.29
Сделать в Query неБазовое поле


7-95150
Azbul
2003-03-27 09:46
2003.05.29
как закрыть процесс


1-94887
Zew
2003-05-16 16:35
2003.05.29
В трей при запуске




   Наверх