| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > Как добавить метод в VC++2005? |
| Автор: torero 4.8.2009, 19:49 |
| Работаю в VC++2005 , т.е. 8-я студия. Интерфейс отличается от 6-ой студии, и вот не могу добавить в проект стандартный метод. В MSDN 2005 написано, что это можно сделать только через интерфейс. Допустим в класс CMyView я хочу добавит метод OnLButtonUp. 1. На панели инструментов щёлкаю иконку ObjectBrowser 2. В открывшемся окне выбираю в заголовке Browse : My Solution и в поле щёлкаю CMyView 3. В открывающемся листе с методами щёлкаю OnLButtonUp 4. Под листом в отдельном окне появляется запись: protected void OnLButtonUp(UINT nFlags, CPoint point) Member of CMyView 5. Теперь нужно нажать OK, Add, Edit или ещё чего-нибудь, но ничего этого нет, а если просто закрыть окно, то метод не появляется в проекте. Что нужно сделать? |
| Автор: kolobok0 6.8.2009, 12:48 | ||
Немного поработать с си бимолем если Вы в броузере (ваш шаг 2) выделите мышкой Ваш класс, то в закладке Properties обратите внимание на появившеися иконочки (молния - ивенты, квадратик с заголовком - мессэджи, маленький кубик - перекрываемые методы). Вам нужна пиктограмма Overrides. Нажмёте на неё и увидете список Ваших методов. напротив них - комбобоксики. открываете их, выбираете наименование по умолчанию и при их закрытии студия вставит обработчик и объявление в cpp&h соответственно. при этом вас переместит в cpp прям в данный метод. скоро думать начнёт за программера студия - явно удачи Вам (круглый) |
| Автор: torero 6.8.2009, 19:38 |
| Сделал, как Вы написали, но, когда нажал Overrides, то вышел не полный список методов. Т.е. там нет OnLButtonUp и нет даже OnLButtonDown, который уже стоит в CMyView и успешно работает. Мой класс CMyView производный от CScrollView и эти методы должны быть. Попробовал метод, который в списке есть PreTranslateMessage, всё OK, он вошёл в проект, но он мне не нужен. P.S. Если выбрать метод так, как написал я на шаге 3, то в окне Properties появляется имя OnLButtonUp, а в пункте CanOverride (можно переопределить) стоит False, т.е. нельзя. Правда, всё это блеклым цветом. |