Форум: "Основная";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];
ВнизПоиск окна по заголовку Найти похожие ветки
← →
Windeus (2002-06-25 16:05) [0]Помогите пожалуйста.. Нашел где-то ф-ию нахождения handle окна по заголову. Применить-то смог, но все равно немного не тот результат, что я ожидал.
Нижеследующий код передает управление в документ, если он уже открыт. Все нормально работает. Только вот никак не могу вправить код таким образом, чтобы устранить следующие: если открыт документ с именем 11.txt и открывается документ с именем 1.txt, то код все равно обнаруживает вхождение и считает что это один и тот же документ. Как здесь указать так, чтобы вхождения искались только с 0-позиции? Помогите...
Вот код:
function Tmainform.FindNextWnd(StartHWND: HWND; AString : String): HWND;
var
Buffer : array [0..255] of char;
begin
Result := StartHWND;
repeat
Result := FindWindowEx(0, Result, nil, nil);
GetWindowText(Result, Buffer, SizeOf(Buffer));
if (StrPos(StrUpper(Buffer), PChar(UpperCase(AString))) <> nil)
then Break;
until (Result = 0);
end;
procedure Tmainform.FormCreate(Sender: TObject);
var
hw: HWND;
begin
hw:=FindNextWnd(Application.Handle,ExtractFileName(ParamStr(1)));
if (hw<>0) then
begin
SetForegroundWindow(hw);
ShowWindow(hw,SW_SHOWNORMAL);
Application.Terminate;
end;
← →
MBo (2002-06-25 16:28) [1]if (StrPos(StrUpper(Buffer), PChar(UpperCase(AString))) = Buffer)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.006 c