Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Предопределенные классы 
:(
    Опции темы
Alex
Дата 3.3.2003, 03:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



Все знают, что в системе windows все классы строятся на базе предопределенных классах. В связи с этим может мне кто-нибудь сказать, как определить на каком именно предопределенном классе, построен известный мне класс?


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
dr.ZmeY
Дата 3.3.2003, 03:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Политолог
****


Профиль
Группа: Участник Клуба
Сообщений: 3892
Регистрация: 26.3.2002
Где: ..::STALINGRAD::. .

Репутация: нет
Всего: 60



Ну посмотри иерархию классов VCL, есть такие таблицы...


--------------------
PM MAIL WWW ICQ Skype   Вверх
dr.ZmeY
Дата 3.3.2003, 03:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Политолог
****


Профиль
Группа: Участник Клуба
Сообщений: 3892
Регистрация: 26.3.2002
Где: ..::STALINGRAD::. .

Репутация: нет
Всего: 60



Какой именно тебе нужен?


--------------------
PM MAIL WWW ICQ Skype   Вверх
Alex
Дата 3.3.2003, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



Задача следующая есть некая программа, написанная на любом языке программирования при щелчке мыши над компонентом мне нужно определить, что это за компонент.


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
AntonSaburov
Дата 3.3.2003, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



Ну вообщем Spy++ это неплохо умеет делать.
PM MAIL WWW ICQ   Вверх
Medved
Дата 3.3.2003, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: 14
Всего: 154



Используй метод ClassParent. Если ClassParent будет равняться nil, значит текущий класс - TObject.
TObject - это вершина иерархии классов.


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
Fantasist
Дата 4.3.2003, 06:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


Профиль
Группа: Участник Клуба
Сообщений: 1517
Регистрация: 24.3.2002

Репутация: нет
Всего: 41



Что-то вы о не понятном говорите. В windows нет никакой иерархии классов.


--------------------
Волны гасят ветер...
PM MAIL   Вверх
Vit
Дата 4.3.2003, 06:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 48
Всего: 207



Если идёт речь о классах Delphi, то метод ClassName


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Alex
Дата 4.3.2003, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



Fantasist если нет иерархии, то, как тогда система определяет, как работать с тем или иным компонентом. Может я и не прав, и чего-то не понимаю, но может, кто ни будь объяснить мне как тот же WinSight32 определяет, что компоненту ComboBox пришло сообщение CBN_SELCHANGE, а не LBN_SELCHANGE, хотя они имеют один номер? Буду рад любому мнению любому совету. Можно давать ссылки на информацию, язык не важен пойму.
Речь я виду о классах windows, а не только Delphi.


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Dayana
Дата 4.3.2003, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 352
Регистрация: 6.10.2002
Где: Тель-Авив

Репутация: 2
Всего: 4



alex-co, существует целая теория о работе операционной системы Windows, о взаимодействиях объектов в ней, о событиях, об обработчике событий. И не надо путать иерархию классов или компонентов в какой либо среде программирования с существованием визуальных и невизуальных объектов в системе. Не система определяет как вести себя объекту и на какие сообщения и события реагировать, а сам объект определяет себя. Система занимается распределением сообщений по очередям. Это зависит от нескольких факторов: откуда пришло сообщение, кто на данный момент активен, ну и т.д. А уже сам объект знает реагировать ему или игнорировать сообщение и отправить его дальше. Вообщем и т.д. и т.п. Это описано во многих книгах по программированию, в том числе и по Delphi. Конкретно не назову литературу, не помню.... :-)
PM MAIL ICQ   Вверх
Alex
Дата 4.3.2003, 21:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



Еще мнения есть


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
dr.ZmeY
Дата 5.3.2003, 04:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Политолог
****


Профиль
Группа: Участник Клуба
Сообщений: 3892
Регистрация: 26.3.2002
Где: ..::STALINGRAD::. .

Репутация: нет
Всего: 60



Приложение, использующее графический интерфейс с пользователем, должно иметь, как минимум, одно главное окно приложения. Для того, чтобы создать окно, необходимо вначале зарегистрировать класс окна. Класс окна определяет набор свойств, характерных для всех окон, создаваемых на базе данного класса. В Windows определены стандартные классы окон, используемые для создания стандартных органов управления. Стандартные классы не регистрируются приложением и для них не определяется функция окна, так как эти операции выполняются автоматически при загрузке Windows.
Для регистрации класса окна используется следующая функция API WIN32:
ATOM WINAPI RegisterClassEx ( const WNDCLASSEX FAR * lpwcx);
В качестве параметра эта функция получает дальний указатель на структуру WNDCLASSEX, которую должно сформировать приложение перед регистрацией класса окна.
Вот стандартные классы являющиеся вершинами иерархии:
TObject
TWinControl
TCommonDialog
Есть ещё и другие....
API WIN32 представляет собой совокупность более 1000 системных функций. В отличие от MS DOS, где для вызова функций ОС используется механизм программных прерываний, вызов системных функций WIN32 производится по их именам. При этом независимо от языка программирования имена функций, а также входные и выходные параметры остаются неизменными.
Ключевую роль в организации работы всех подсистем и приложений Windows играет система сообщений. Сообщение -это структура данных специального вида, которое получает окно для совершения каких-либо действий. Источником сообщений в операционной системе Windows является аппаратура, сама ОС и приложение. Процесс обработки сообщений в ОС Windows происходит следующим образом: при действии пользователя на устройство ввода активизируются программы-драйверы устройств ввода. Драйверы определяют какое именно действие совершил пользователь. Информацию о действии пользователя драйверы передают в поток необработанного ввода (RIT-raw input thread). Основной задачей потока необработанного ввода является определение приложения, для которого предназначено сообщение. Например, если пользователь произвел действие с мышью, то сообщение отправляется тому приложению над чьим окном находился курсор мыши при возникновении событий. Для определения приложений, которым предназначены сообщения клавиатуры используется понятие фокуса ввода(это место, где в данное время мигает курсор для ввода данных). Фокус ввода принадлежит тому окну, которое получит сообщение при действии пользователя на клавиатуру, из потока необработанного ввода сообщение попадает в виртуальную очередь потока. У каждого приложения имеется своя собственная виртуальная очередь потока. Из виртуальной очереди потока сообщение попадает в очередь сообщений потока, помимо сообщений от аппаратуры, в очереди сообщений потока содержатся сообщения от ОС и др. приложений. Прикладная программа извлекает сообщение из очереди сообщений потока и производит их обработку.


--------------------
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 5.3.2003, 06:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: 14
Всего: 154



Цитата(Vit @ 4.3.2003, 09:53)
Если идёт речь о классах Delphi, то метод ClassName

Скорее ClassParent.
ClassName - имя текущего класса, а ClassParent - имя класса-родителя.


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
Alex
Дата 7.3.2003, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



Всем спасибо я все нашел


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0742 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.