Страница 1 из 1

MVS 2008 и SDI приложение

Добавлено: 12 авг 2008, 09:16
Albor
Вот с чем столкнулся в новой студии: SDI проект с классом представления унаследованным от CFormView. Размещаю на панели диалога контрол, любой, пусть будет статик. Связываю с ним переменную (m_static). После чего, программно пытаюсь изменить текст данного статика: m_static.SetWindowText("new text");, но, при выполнении, возникает исключение. Проверяю причину: перед изменением текста вызывается функция ::IsWindow(m_hWnd), где m_hWnd равно нулю, как я понимаю, раз хендл дочернего окна равен 0, значит окна нет, но на панели статик изначально отображён, следовательно окно есть. Обхожу механизм DDX и обращаюсь к контролу напрямую: GetDlgItem(IDC_STATIC_ST)->SetWindowText("new text"); - всё в порядке, работает как надо. Проверил данный момент в VS 6 - там, без проблем, всё работает и через DDX. Данный момент касается всех контролов, во всяком случае, я проверил на кнопках и на статиках со стилем картинки. Кто может прокоментировать? Это глюк студии, так задумано или нужно что-то настроить в проекте?

Re: MVS 2008 и SDI приложение

Добавлено: 12 авг 2008, 21:56
dr15
Когда-то сталкивался с подобным глюком в MVC 2005. Не помню как решил эту проблему. Попробуй скомпилировать не как Debug, а как Release. Вдруг будет чудо??? :D :D :D