Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];

Вниз

Как поменять название кнопки   Найти похожие ветки 

 
Denvor   (2002-09-17 01:06) [0]

Вот в поиске нашёл примерчик снятия хэндла с кнопки Пуск, но он у меня не заработал:
procedure TForm1.Button5Click(Sender: TObject);
var
ClassName : array[0..255] of char;
Wnd, Child : HWnd;
begin
Wnd := Windows.FindWindow("Shell_TrayWnd", "");
if Wnd <> 0 then begin
Child := GetWindow(Wnd, GW_CHILD);
repeat
GetClassName(Child, ClassName, 255);
if StrPas(ClassName) = "Button" then begin
ShowWindow(Child, SW_HIDE); Break
end else
Child := GetWindow(Wnd, GW_HWNDNEXT);
until Child = 0
end
end;
Что интересно, так Wnd := Windows.FindWindow("Shell_TrayWnd", ""); вообще ничего не возвращает. А описания "Shell_TrayWnd"я не нашёл ни в MSDN е, ни в энциклопедии по API.


 
Diamond Cat   (2002-09-17 01:26) [1]

скорей всего это должно выглядеть так
procedure TForm1.Button5Click(Sender: TObject);
var
ClassName : array[0..255] of char;
Wnd, Child : HWnd;
begin
Wnd := FindWindow("Shell_TrayWnd", nil);
if Wnd <> 0 then begin
Child := GetWindow(Wnd, GW_CHILD);
repeat
GetClassName(Child, ClassName, sizeof(classname));
if StrPas(ClassName) = "Button" then begin
ShowWindow(Child, SW_HIDE);
Break
end else
Child := GetWindow(Wnd, GW_HWNDNEXT);
until Child <> 0
end
end;
И если я не ошибаюсь то кнопка пуск не содержит текста, на ней валяется рисунок, соответственно заменить его можно через Fillrect или попроще и опустив всю волокиту с преведенным выше текстом
var
im:Tbitmap;
begin
im.LoadFromFile("start.bmp")
sendmessage( FindWindowEx(FindWindow("Shell_TrayWnd",nil),0,"Button", nil),BM_SetImage,IMAGE_BITMAP,im.Handle);

соответственно для начала надо создать рисунок start.bmp, и положить его в туже дир-ю что и исполняемый файл
могу поделиться рабочей прогаммой


 
Song   (2002-09-17 09:17) [2]

2Diamond Cat © (17.09.02 01:26)
Всё правильно, FindWindow() идёт по ссылке из windows.dcu


 
Denvor   (2002-09-17 11:24) [3]

Прикиньте, Бэйсик так глючит в сфере ВинАпи!
Перевёл аналог. процедуру из Делфы на Висик, так Хэндл Систем Трэй ВНД он находит, а хэндл ПУСКА - нет, а в делфи всё Ок!



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

Форум: "WinAPI";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-92525
ЛенаК
2002-10-16 07:22
2002.10.28
Переход по компонентам


7-92768
lack
2002-08-20 19:49
2002.10.28
Народ нужна такая прога:


7-92763
Flying Bird
2002-08-21 00:12
2002.10.28
Регистрация типа файлов


14-92729
AL2002
2002-10-08 13:49
2002.10.28
Люди, вы не могли бы подсказать


1-92601
brestmarket
2002-10-15 12:44
2002.10.28
Как в WebBrowser1 программно переходить от одного якоря (anchor)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский