Текущий архив: 2007.04.22;
Скачать: CL | DM;
Вниз
Вопрос. Найти похожие ветки
← →
Страждущий (2007-03-31 23:15) [0]Доброй ночи.
Тема такая на чужой форме есть два edit
класс и название известно
на пример
user:Tedit
pass:Tedit
в эдитах пусто
Функция
EditWnd := FindWindowExA(Wnd, 0,"Tedit","user");
неходит
как Быть ?
← →
DrPass © (2007-04-01 00:05) [1]
> FindWindowExA(Wnd, 0,"Tedit","user");
Посмотреть на "чужую форму" с помощью WinSight. Вполне вероятно (точнее, на 100% наверняка), что у них и класс не TEdit называется, и заголовок не user :)
← →
Страждущий (2007-04-01 00:14) [2]100 %
TEdit
100 %
user.
почему так уверен это бывшая моя прога.
исходники утеряны.
← →
RASkov (2007-04-01 01:27) [3]> [2] Страждущий (01.04.07 00:14)
Значит перемудрил с Wnd и(или) со второым параметром который у тебя - 0....
← →
DrPass © (2007-04-01 11:41) [4]
> Страждущий (01.04.07 00:14) [2]
Ну и что, что твоя бывшая? Ты в ней переписывал компоненты TEdit, чтобы они имели класс окна "Tedit"?
Оконный класс и заголовок окна в Windows - вещи, не имеющие никакого отношения к классу компонента и свойству Name. Только в случае формы она дает своему оконному классу имя своего класса.
Так что см.
> DrPass © (01.04.07 00:05) [1]
← →
Leonid Troyanovsky © (2007-04-01 12:44) [5]
> DrPass © (01.04.07 11:41) [4]
> Только в случае формы она дает своему оконному классу имя
> своего класса.
Любому винконтролу, удивись.
--
Regards, LVT.
← →
DrPass © (2007-04-01 13:41) [6]
> Leonid Troyanovsky © (01.04.07 12:44) [5]
Вряд ли ты меня удивишь такой фигней, но таки да, я ошибся - для TEdit и стандартных компонент VCL класс действительно такой же. Насчет "любому винконтролу" - не факт, т.к. CreateParams метод виртуальный, и "любому или нелюбому" остается на усмотрение разработчика контрола.
Впрочем, все равно стоит принять во внимание
> DrPass © (01.04.07 00:05) [1]
Кроме имени класса у окна еще и заголовок есть.
← →
Leonid Troyanovsky © (2007-04-01 13:48) [7]
> DrPass © (01.04.07 13:41) [6]
> метод виртуальный, и "любому или нелюбому" остается на усмотрение
> разработчика контрола.
Она и он - некоторая разница ж есть, IMHO.
> Кроме имени класса у окна еще и заголовок есть.
Тебя удивить тем, что есть "заголовок" окна EDIT?
--
Regards, LVT.
← →
begin...end © (2007-04-01 14:03) [8]Заголовок (название) окна TEdit есть его текст на момент создания контрола (вызова CreateParams).
← →
begin...end © (2007-04-01 14:08) [9]> DrPass © (01.04.07 11:41) [4]
> Ты в ней переписывал компоненты TEdit, чтобы они имели класс
> окна "Tedit"?
FindWindow(Ex) ищет регистронезависимо.
← →
DrPass © (2007-04-01 14:12) [10]
> begin...end © (01.04.07 14:03) [8]
Вот именно. А не свойство Name, как это, похоже, считает автор темы.
> Leonid Troyanovsky © (01.04.07 13:48) [7]
Да не переживай за меня так. Я знаком с Win32 API... и вполне вероятно, что не хуже тебя ;-)
← →
DrPass © (2007-04-01 14:15) [11]
> begin...end © (01.04.07 14:08) [9]
Это понятно. Я просто считал, что Delphi для стандартных контролов не заморачиваясь использует стандартные классы EDIT, BUTTON и т.д. Я уже посмотрел, что она их копирует и создает новый класс, так что сорри.
← →
RASkov (2007-04-01 14:19) [12]Всегда думал, что заголовок Edita это его текст, но вот ведь какая еще есть фигня
> Заголовок (название) окна TEdit есть его текст на момент создания контрола (вызова CreateParams).Caption:=Format("FindWin - %d, Hnd - %d",[FindWindowExA(Handle, 0, "Tedit", PChar(Edit1.Text)), Edit1.Handle]);
← →
RASkov (2007-04-01 14:28) [13]Т.е. получается, что фик идентифицируешь TEdit"ы FindWindowExA"ом не зная, что у них было в Текст при создании....
← →
DrPass © (2007-04-01 15:07) [14]
> RASkov (01.04.07 14:28) [13]
Можно идентифицировать, зная порядок их создания. Для того у ней и есть второй параметр
← →
Leonid Troyanovsky © (2007-04-01 15:47) [15]
> RASkov (01.04.07 14:19) [12]
> Всегда думал, что заголовок Edita это его текст, но вот
> ведь какая еще есть фигня
Ни разу не использовал EDIT with title bar :) (т.е., не знаю),
но к FindWindowEx оно отношение имеет минимальное.
Однако, использование последнего для поиска текста
в чужих контролах - проблематично.
--
Regards, LVT.
← →
Leonid Troyanovsky © (2007-04-01 15:54) [16]
> DrPass © (01.04.07 14:12) [10]
> вероятно, что не хуже тебя ;-)
Ну, и славно. А то я уж начал переживать.
--
Regards, LVT.
Страницы: 1 вся ветка
Текущий архив: 2007.04.22;
Скачать: CL | DM;
Память: 0.5 MB
Время: 0.067 c