Изменение представления
Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain
КАК сделать так что бы при нажатии кнопки в SDI , вместо основного Вью появлялась другое Вью ? т.е. жмём хотя бы даже в меню чего-нить и вместо списка (например) нам появляется что то другое (например) CTreeCtrl &
- Romeo
- Сообщения: 3091
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
А можно несколько пояснее? Куда жмём и где именно появляется? То ли я тупой, то ли слепой уже, никак не пойму
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Нет тупой скорее я :lol: Ну да ладно. Короче вот есть обычное SDI приложение, которое построено на базе CListView . Вот тама выбираем какой нить пункт лист контрола и кликаем на него мышью. Надо чтоб этот лист контрол убрался к бабушке а вместо него(например) появилася какайнить форма другая , например на основе диалоговых окон.Romeo писал(а):А можно несколько пояснее? Куда жмём и где именно появляется? То ли я тупой, то ли слепой уже, никак не пойму
Вот! Т.е. или это на SDI не сделаешь ни коим образом, или это в CDocument надо 2 представление регистрировать. ,т.е. вообще как поменять вот это представление. Или же вообще как сделать тоже самое но не на SDI ??? Заранее спасибо. :lol: :?:
А разве нет таких свойств. как Visible и Enabled?
Я так понял. что тебе нужно в одном окне просто нужно заранее предопределить контролы, а потом ими умело опериравать через вышеупомянутые свойства(или функции, не помню... же отвык от С++)
Я так понял. что тебе нужно в одном окне просто нужно заранее предопределить контролы, а потом ими умело опериравать через вышеупомянутые свойства(или функции, не помню... же отвык от С++)
Усложнять - легко, упрощать - сложно
- Romeo
- Сообщения: 3091
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Alezis, если ты настаиваешь на том что View должен именно подмениться, то, боюсь ничем помочь не могу. Т.е. опыта подобного у меня не было и потому нужно разбирать с нуля, что ставит нас на один уровень, а это неприемлемо (форум ведь сделан для того, чтобы более опытные могли делиться с менее опытными).
Единственный совет касается самой изобретённой идеологии. Если вопрос поставить так: что-то щёлкаем и открывается новое окошко с другим View - то реализавть это будет значительно проще (опять-таки, по крайней мере, я с таким сталкивался), да и логичнее, наверное, будет (уж извини, но никак не могу придумать задачу, для которой требуется именно замена View контрола).
Единственный совет касается самой изобретённой идеологии. Если вопрос поставить так: что-то щёлкаем и открывается новое окошко с другим View - то реализавть это будет значительно проще (опять-таки, по крайней мере, я с таким сталкивался), да и логичнее, наверное, будет (уж извини, но никак не могу придумать задачу, для которой требуется именно замена View контрола).
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
- Romeo
- Сообщения: 3091
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
А если делать не на SDI, то Hup прав. Расположи на диалоге все необходимые контролы, а потом виртуозно прячь и показывай лишь те, которые требуются по контексту. Либо создавай и разрушай необходимые контролы (CreateWindow[Ex] и DestroyWindow) - но этот способ менее приемлемый.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
да ты прав наверное Romeo лучше будет в отдельном окне. А с диалогами тож спасибо. Чтож попробуем по-другому.
Alezis, у меня есть примерчик собственноручного извращения... Правда не уверен, что именно такой тебе нужен. Могу скинуть
Усложнять - легко, упрощать - сложно
Если не трудно скинь на 1005@tut.by. Буду очень благодарен.Hup писал(а):Alezis, у меня есть примерчик собственноручного извращения... Правда не уверен, что именно такой тебе нужен. Могу скинуть
Alezis, ты если честно поднял аффигенно класную проблему! Столкнулся я с ней года два-три назад! И ты не прав - докопай до конца! Не пожалеешь!!!
Для тех кто не понял: В MFC более менее реализовано сопоставление одному представлению несколько документов, а вот наоборот довольно трудно. Т. е. у вас есть один класс документа, а под каждое другое представление свой класс. Очень удобная штука для реализации сложных приложений, где данные одни и те же, а показывать их надо по разному
К сожалению копал эту проблему давно исходники нарыть будет трудно. В MSDN есть решение этой проблемы, но ссылку тоже не помню. Что-то связанное с RUNTIME_CLASS, или где-то созвучное! Попробуй это стоит того!
Для тех кто не понял: В MFC более менее реализовано сопоставление одному представлению несколько документов, а вот наоборот довольно трудно. Т. е. у вас есть один класс документа, а под каждое другое представление свой класс. Очень удобная штука для реализации сложных приложений, где данные одни и те же, а показывать их надо по разному
К сожалению копал эту проблему давно исходники нарыть будет трудно. В MSDN есть решение этой проблемы, но ссылку тоже не помню. Что-то связанное с RUNTIME_CLASS, или где-то созвучное! Попробуй это стоит того!