Два CView без CSplitter

Модераторы: Romeo, Hawk, Absurd, WinMain, DeeJayC

Ответить
Styopa
Сообщения: 40
Зарегистрирован: 30 сен 2004, 19:22
Откуда: Севастополь
Контактная информация:

30 сен 2004, 19:51

Граждане программеры! Подскажите, плиз. Проблема такая: хочется в окне использовать 2 вида (скажем, CView и CListView), как в XP-шном Explorer. Маздайцы предлагают только CSplitter, но ведь он шириной 5-7 пикселей, трехмерный и т.п. А чтобы бесшовно слепить? Понимаю, что должно быть просто, но я только недавно перешел на VC++ после VB + WinAPI...
Аватара пользователя
Romeo
Сообщения: 3091
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

01 окт 2004, 12:03

В IE он родимый (то бишь CSplitter) и используется, господин Styopa.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Dragonfly
Сообщения: 15
Зарегистрирован: 01 окт 2004, 18:23
Откуда: Киев

01 окт 2004, 18:53

В общем-то никаких проблем. Ты когда-нибудь задавался вопросом, каким образом реализуется не просто splitter но и возможность "вытащить" окно из сплиттера и переместить его в другую область экрана? То что ты хочешь, можно действительно сделать просто, но... Для этого необходимо реализовать фактически часть framework'а Windows. Не помню, где я это выцепил, но точно в MSDN или в MSDN samples (или в исходных кодах MFC для сплиттера). Суть состоит в том, что ты создаешь дополнительный (2-й) поток сообщений, в результате чего перехватываешь движение мыши до главного окна и это окно сообщений не получает. В результате чего ты можешь перерисовывать с помощью hatch brush стандартный ползунок сплиттера, или чего ты там хочешь.

Сейчас под рукой исходников нет, но если хочешь :)
И накроет землю тень Армагеддона (и мы примем в этом активное участие :) )
Styopa
Сообщения: 40
Зарегистрирован: 30 сен 2004, 19:22
Откуда: Севастополь
Контактная информация:

02 окт 2004, 23:35

Romeo, спасибо, земляк. Как говорит реклама на Юмашевском ЖИТТЯ БЕЗ ГЕМОРРОЮ КРАЩЕ! Решил не страдать *нёй, а писать с обычным Сплиттером
В жизни программиста всего три плюса. Из них два - в Си++, а третий - крест на его могиле.
Styopa
Сообщения: 40
Зарегистрирован: 30 сен 2004, 19:22
Откуда: Севастополь
Контактная информация:

02 окт 2004, 23:48

Dragonfly, гран мерси. Красота, конечно, стоит жертв. Но вы посмотрите на эту :? красоту и на эти :shock: жертвы!!! :shock: [/b]
Ответить