| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > PageControl и правая кнопка мыши. |
| Автор: ivan219 23.2.2007, 16:25 |
| Я вынет все типы на основе которых создаётся PageControl TabSheet в отдельный Unit и создал свой тип TMyCustomTabControl TMyPageControl TMyTabSheet ну и сопутствующие типы те которые используются в этих. Зарегистрировал компонент TMyPageControl всё ОК. Проблема в следующем когда наводишь курсор на обычный PageControl и нажимаешь правую кнопку мыши то появляется меню где можно выбрать New Page т.е. новая закладка можно удалить и.т.д. но вот в моём компоненте это заделать нельзя хотя динамически из типа TMyTabSheet создаётся закладка. Ошибок нет всё компилируясь. Так что проблема в этом меню как его создать |
| Автор: aktuba 23.2.2007, 16:41 |
| Ты бы хоть код показал. Откуда остальные знают, чего ты там накодил? |
| Автор: Sunvas 23.2.2007, 17:40 |
| ivan219, ты вообще какие-то изменения в коде делал? |
| Автор: ivan219 23.2.2007, 17:57 | ||
Я только переименовал типы TPageContoro -> TMyPageControl, TTabSheet -> TMyTabSheet, TCustomTabControl -> TMyCustomTabControl вовсём коде и болше ничего, он работает и компилится без проблем нету только этого меню. |
| Автор: Sunvas 23.2.2007, 18:12 |
| ivan219, да.. Интересная проблема. Вот уже скоко долблюсь, а нигде не могу найти хотя бы зацепку. |
| Автор: ivan219 23.2.2007, 18:54 |
| Может там как отдельно регестрируется в самой Delphi этоже её меню. Да и если зделать новый клас от PageControl то это меню появляется |
| Автор: Sunvas 23.2.2007, 19:03 |
| Хм. Я переискал везде текст previous так ничего и не нашел.. |
| Автор: ivan219 23.2.2007, 19:11 |
А воще это возможно зделать такое меню может это сами разработчики Dephi так зделали а самому такое нельзя реализовать ![]() |
| Автор: aktuba 24.2.2007, 02:43 | ||
Нет, свои пункты в контекстное меню Delphi добавляют и сторонние компоненты, например DevExpress... ![]() |
| Автор: ivan219 24.2.2007, 13:31 |
| aktuba, А исходники можеш выложить. |
| Автор: Bose 15.3.2007, 21:54 | ||||
| ivan219, сам не пробовал, но, примерное направление могу указать.. посмотри функцию:
Для начала видимо нужно создать класс редактора унаследованный от TComponentEditorClass Пункты в контестное меню добавляются с помощью методов: GetVerbCount и GetVerb. В общем посмотри в хэлпе класс:
Там всё довольно подробно расписано. |
| Автор: ivan219 15.3.2007, 23:05 |
| Bose, спасибо посмотрю. |
| Автор: larinva 18.9.2009, 10:14 |
| Всем привет подскажите как вызвать виндовское меню правой кнопки мыши в ListBox http://ipicture.ru/ |