Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2009, 16:20   #1
joker
Форумчанин
 
Регистрация: 23.09.2007
Сообщений: 147
По умолчанию Выделение дочернего окна и пункта меню

1: все ли компоненты отображающие текст являются окнами?
2: как провести поиск в главном меню программы (то есть получить указатель на голову, и искать по дочерним пунктам, кстати неплохо было бы что-нить аналогичное EnumChildWindows только с пунктами меню)?
3: как выделить окно (то показать родителя и допустим показать ту вкладку где лежит заголовок окна, чей хендл известен)? Нужно ли запоминать для этого всех его родителей или достаточно отправить ему какое-нить сообщение?
4: аналогично симулировать попадание в известный подкаталог меню?
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
joker вне форума Ответить с цитированием
Старый 02.02.2009, 16:36   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
все ли компоненты отображающие текст являются окнами?
Нет
Цитата:
как провести поиск в главном меню программы
GetMenu и далее читай хелп по Win API
Цитата:
как выделить окно
отправить ему сообщение... ТОлько вопрос я не совсем понял
Цитата:
аналогично симулировать попадание в известный подкаталог меню
А помоему можно послать сообщение Item'у менюшки

Вот пример завалялся:

Код:
//********** FUNCTION **********
 function Click_MainMenu_item(Form: Thandle; NumMenu:integer=0;
   NumItem:integer=0):variant;

var hm:Hmenu;  i, idmen:integer;
begin

hm:=GetMenu(form);
hm:=GetSubMenu(hm,NumMenu);
idMen:=GetMenuItemID(hm,NumItem);
if idMen<>0 then
 PostMessage(form,WM_COMMAND,idMen,0);
result:=idmen;
end;
//********** END FUNCTION ******
I'm learning to live...

Последний раз редактировалось Stilet; 02.02.2009 в 16:44.
Stilet вне форума Ответить с цитированием
Старый 03.02.2009, 10:09   #3
joker
Форумчанин
 
Регистрация: 23.09.2007
Сообщений: 147
По умолчанию

Про меню понятно. Ну например как сделать так чтобы заданный текст в контролле выделился (обычно заголовок)?
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
joker вне форума Ответить с цитированием
Старый 03.02.2009, 10:27   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
чтобы заданный текст в контролле выделился (обычно заголовок)?
Вопроса не понял. Что значит "выделился"? И что ты под текстом подразумеваешь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.02.2009, 19:29   #5
r9m
₪₪₪₪₪₪₪₪
Форумчанин
 
Аватар для r9m
 
Регистрация: 16.04.2007
Сообщений: 471
По умолчанию

Stilet
>> все ли компоненты отображающие текст являются окнами?
>> Нет

Это как это нет? o_O По моему как раз таки и да
r9m вне форума Ответить с цитированием
Старый 04.02.2009, 04:11   #6
joker
Форумчанин
 
Регистрация: 23.09.2007
Сообщений: 147
По умолчанию

ну есть у нас какой-нить саттичный текст в окне (допустим - что-нить типа дельфовского лейбла) Мы же можем мышком выделить текст, так какое сообщение надо отсылать окну, чтобы выделить находящийся в нем текст
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
joker вне форума Ответить с цитированием
Старый 04.02.2009, 04:51   #7
r9m
₪₪₪₪₪₪₪₪
Форумчанин
 
Аватар для r9m
 
Регистрация: 16.04.2007
Сообщений: 471
По умолчанию

Выделить ты его не сможешь. А вот если нужно установить, или брать оттуда текст, то пожалуйста... Ровно кстати как и большинство других действий доступны по управлению окнами. Пример на ассемблере masm32 в атаче.
Вложения
Тип файла: rar stat.rar (3.6 Кб, 14 просмотров)
r9m вне форума Ответить с цитированием
Старый 04.02.2009, 18:16   #8
user_jasser
я не ~
Пользователь
 
Аватар для user_jasser
 
Регистрация: 19.09.2008
Сообщений: 58
По умолчанию

Цитата:
Сообщение от r9m Посмотреть сообщение
Stilet
>> все ли компоненты отображающие текст являются окнами?
>> Нет

Это как это нет? o_O По моему как раз таки и да
ну есть какБэ еще контекстное устройство экрана, если это подходит под понятие.:хз:
user_jasser вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как место меню закрытия окна вставить что-то свое? chandrasecar Win Api 12 12.10.2008 01:45
Получение хэндла дочернего контрола Lich Win Api 7 01.07.2008 10:58
Разбиение дочернего окна на колонки... HunterMan Win Api 3 03.04.2008 23:19
Меню, создание нового пункта Yogik™ Помощь студентам 2 17.08.2007 17:32