Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

Курс видеоуроков КРЭКЕРСТВО + ПРОГРАММИРОВАНИЕ 2017
(актуальность: апрель 2017)
Свежие инструменты, новые видеоуроки!

  • 400+ видеоуроков
  • 800 инструментов
  • 100+ свежих книг и статей

УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

БОЛЬШОЙ FAQ ПО DELPHI



Z-порядок при каждом показе диалога


 // Там не листбокс, а EDIT, но суть точно та же. Чтобы получить текст, а не
 // записать его, надо просто использовать Get вместо Set. Судя по тому, что
 // программа уже 2 года работает без малейших проблем, Z-порядок при  каждом
 // показе диалога один и тот же.
 
 program Project1;
 
 uses
  Windows, Messages;
 
 const
  Title1 = 'Установка связи';
  Title2 = 'Удаленное соединение';
  Login = '...';
  Password = '...';
 
 var
  Wnd: HWND;
  Control: array [0..127] of char;
 
 procedure TypeTextIntoNextEdit(AText:string);
 begin
  repeat // Ищем следующее в Z-порядке окно класса EDIT
    Wnd := GetWindow(Wnd, GW_HWNDNEXT);
    GetClassName(Wnd, Control, SizeOf(Control))
  until Control = 'Edit';
  SendMessage(Wnd, WM_SETTEXT, 0, Integer(PChar(AText))) // Вводим текст
 end;
 
 begin
  Wnd := FindWindow(nil, Title1);  // Это окно самого диалога
  if Wnd = 0 then                  // Если не найдено, ищем другой диалог 
  begin
    Wnd := FindWindow(nil, Title2);
    if Wnd = 0 then Exit;
  end;
  Wnd := GetWindow(Wnd, GW_CHILD); // Это верхний комбобокс
  TypeTextIntoNextEdit(Login);     // Вводим логин
  TypeTextIntoNextEdit(Password)   // Вводим пароль
 end.
 




<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS