Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.04;
Скачать: CL | DM;

Вниз

Как зная хендл окна прочитать его заголовок и заменить своим   Найти похожие ветки 

 
igornov   (2003-10-07 18:20) [0]

Здравствуйте уважаемые мастера!!!

Необходимо в заголовок некоторого терминального приложения включить индикатор раскладки клавиатуры. Как читать текущую раскладку знаю. Могу прочитать также и заголовок. Но как туда
запихнуть то же + свой текст (в данном случае значение раскладки)

Интересует именно по хендлу, поскольку заголовок приложения при работе постоянно меняется.

Заранее благодарен.


 
clickmaker ©   (2003-10-07 18:38) [1]

WM_SETTEXT, SetWindowText


 
igornov   (2003-10-08 09:12) [2]

А сам индикатор тот который выводится в трей internat.exe как-то
связать или поместить в заголовок главного окна чужого приложения можно?


 
Игорь Шевченко ©   (2003-10-08 10:07) [3]


> Как читать текущую раскладку знаю.


Для своего приложения. Но не для чужого. И не факт, что раскладки будут совпадать.


 
igornov   (2003-10-08 12:48) [4]

ну почему? ниже приведённый код это делает

function GetActiveKLayout: string;
var
hWindow,idProcess : THandle;
begin
hWindow := GetForegroundWindow;//получаем handle активного окна чужой программы
idProcess := GetWindowThreadProcessId(hWindow,nil);//Получаем идентификатор чужого процесса
case (GetKeyboardLayout(idProcess) shr $10) of //Получаем текущую раскладку в чужой программе
1033 : result := "EN";
1058 : result := "UK";
1049 : result := "RU";
end;
end;

остаётся только вывести например прозрачную плавающую форму с значением раскладки в пределах нужного терминального приложения.
Только вот как эти пределы вычислить для чужого окна?


 
blackman ©   (2003-10-08 13:11) [5]

XP - чужое окно = чужая раскладка


 
Игорь Шевченко ©   (2003-10-08 13:48) [6]

igornov (08.10.03 12:48)

Да, прошу пардону, для конкретного потока тоже можно. Ошибся я :)

В пределах нужного окна - GetWindowRect



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

Текущий архив: 2003.12.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.007 c
6-11649
Peter
2003-10-09 16:04
2003.12.04
Почему???


3-11588
rtooo
2003-11-13 21:57
2003.12.04
какими базами для этого лучше всего пользоваться


6-11645
Yurko
2003-10-09 17:30
2003.12.04
WNetEnumResource


8-11629
Misha
2003-08-03 17:50
2003.12.04
форматы


4-11725
DmitryIPAC
2003-10-06 13:55
2003.12.04
Помогите