Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > MFC и кнопки без обработчиков


Автор: Leksey 24.8.2005, 14:40
Как можно сделать так, чтобы MFC кнопки и пункты меню без обработчиков не делала не доступными?

Автор: Coocky 24.8.2005, 14:44
Leksey
Никак.
Смысл в кнопках, если нет обработчиков?
Добавлено @ 14:45
P.S. Я так понял ты говоришь о кнопках на Тулбаре и пунктах меню?

Автор: Leksey 24.8.2005, 15:17
О кнопках на диалоговой панели со стандартными MFC Id (типа AFX_ID_PREVIW_CLOSE)
Просто никак не могу найти ошибку в программе .
Создаю окно предварительного просмотра как дочернее от окна другого процесса и в нем почему-то в диалоговой панели кнопки не доступны, а если создавать в том же процессе то доступны.Я никак не могу понять почему.

Автор: Coocky 24.8.2005, 15:20
Leksey
Я то же ничего не понял....
Еще раз, конкретней-какой интерфейс и что ты делаешь
При чем здесь процессы, к кнопкам?

Автор: Leksey 24.8.2005, 15:47
Ладно поясню.
Есть программа которая состоит из двух exe контейнер и компонент.
Обе на MFC с архитектурой документ/представление.
В одном контейнере щелкают Предварительный просмотр в меню.Обработчик посылает Ole команду чт-то вроде AFX_OLE_PRINTPREVIEW точно не помню.
В компоненте обработчик на эту команду.
Если поставить стандартный CView::OnPrintPreview обработчик то, предварительный просмотр открывается в дочернем MDI окне.Я переписал стандартные обработчики и подставляю вместо дочернего окна основное, которое в контейнере создается.Предварительный просмотр открывается на все окно и диалоговая панель тоже, но кнопки на ней недоступны.Хотя по щелчку мыши происходит увеличение или уменьшение изображения.

Автор: Coocky 24.8.2005, 15:57
Leksey
У меня подобное было.
Голяк полный, надо добавлять и переписывать руцями обработчик.
Но благо я столкнулся с этим на начале проекта, поэтому создал новый, и уже предварительный просмотр не трогал.

Автор: Leksey 24.8.2005, 16:01
В смысле не трогал?
Вообще его не писал?
Или своими силами?
У меня получилось переписать стандартные обработчики чтобы предварительный просмотр был на все окно и в проекте тестовом все замечательно работает, но когда переношу в большой поект про который рассказывал такая лажа выходит.

Автор: JoyEx 25.8.2005, 10:14
Попробуйте это
Код

ON_UPDATE_COMMAND_UI_RANGE( , ,OnUpdateEditCommand)



 ...::OnUpdateEditCommand(CCmdUI* pCmdUI)
{
    pCmdUI->Enable(TRUE);
}

Автор: Leksey 25.8.2005, 14:57
Это не работает,пробовал.
Перенес предварительный просмотр в контейнер теперь все нормально .

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)