Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как сделать XP-й тулбар? Я про True Colour???? 
:(
    Опции темы
Rapalex
  Дата 28.7.2006, 13:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: 6
Всего: 8



Внимение раньше в старый версиях была папка с различными битмапами, курсорами и иконами.

Я (в VS 2005) искал и не нашол а вметсо этого нашол "Visual Studio 2005 Image Library", всего кучя.

During Visual Studio setup, the image library is copied to your computer as the file VS2005ImageLibrary.zip. The default directory for this file is \...\Program Files\Microsoft Visual Studio 8\Common7\VS2005ImageLibrary\.

И возник вопрос как в мой тулбар воткнуть изображение с ветом 24 или 32 (с учетом прозрачноть, к стати как она работает?)? 


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
Coocky
Дата 1.8.2006, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Цитата(Rapalex @  28.7.2006,  13:18 Найти цитируемый пост)
И возник вопрос как в мой тулбар воткнуть изображение с ветом 24 или 32 (с учетом прозрачноть, к стати как она работает?)?

А никак. smile  Халявы нет. Как-то сталкивался с такой проблемой. Самый легкий способ, который я нашел-это просто генерил битмап 32 битовый, на котором рисовал и иконки для кнопок (такой генерит сама студия). Его и лепил CToolBar::LoadBitmap (не забудь -!   If the images are not of the standard size (16 pixels wide and 15 pixels high), call SetSizes to set the button sizes and their images.  ) .
Если б было все так просто, то не создавались стороние библиотеки GUI от стороних разработчиков. Платные. smile 
Но всегда можно выкрутится.
Можно сделать эмитацию своего тулбара. Через CDialogBar, на нем разместить кнопки (свои). Как рисовать кнопки-мы все знаем. Про прозрачность - напишу в том же месте. Если не успею-здесь расскажу.
Все гениальное просто.. smile 



--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Rapalex
Дата 1.8.2006, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: 6
Всего: 8



 smile Разочяровал ты меня.

Тогда зачем такую крутую библиотеку картинок делать.

Так как же нам на интерефейс XP переходить, или других более новых систем.

Я разочарован в Мелькософре.

А насчёт размеров иконок, сомневаюсь, я в редакторе ресурса тулбара потянул и изменил размер кнопки запустил и всё заработало. Но я так и немогу осознать навернека - так это что подножка от МФС 16 цветов в тулбаре, или наворот системмы.

Я так понял в системме (внутри) у тулбара есть ImageList он создаётся на базе изображения кнопок и гдето внутри у него в функцию Create передаётся атрибут того что рисунок та не True Colour. И у меня появилось желание получить этот CImageList уничтожить картинки и создать тоже самое но True Colour тогда должно заработать.

Но пока сижу и разбираюсь чего у меня сообщения не так как надо бегают, замахался я уже.

ЛЮДИ НЕ ОТХОДИТЕ ОТ СТАНДАРТНОГО КАРКАСА MFC ПОЖАЛЕЕТЕ!!!


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
Coocky
Дата 1.8.2006, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Цитата(Rapalex @  1.8.2006,  12:50 Найти цитируемый пост)
Тогда зачем такую крутую библиотеку картинок делать.

Здрасть.. smile 
Неужели VC- это всего лишь МФС? smile 

Цитата(Rapalex @  1.8.2006,  12:50 Найти цитируемый пост)
Так как же нам на интерефейс XP переходить, или других более новых систем.

Да нормально переходить! Как обыкновеный программист. Тебе дали стандртный интерфейс Windows. Вот и работай.
Хочется свои кнопки? Пожалуйста-делай. Я сомневаюсь, что Office 2003 использует CToolBar  smile 
Вот что я подумал попробуй - как получить указатель на  CToolBarCtrl (CToolBar::GetToolBarCtrl)
Посмотри его методы.
Вроде как даст более точную настройку. Там даже стили есть. smile 

Цитата(Rapalex @  1.8.2006,  12:50 Найти цитируемый пост)
ЛЮДИ НЕ ОТХОДИТЕ ОТ СТАНДАРТНОГО КАРКАСА MFC ПОЖАЛЕЕТЕ!!! 

  Люди-Не ленитесь. Делать все руками. Контекст устройства-рулит!



--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Rapalex
Дата 1.8.2006, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: 6
Всего: 8



Цитата(Coocky @  1.8.2006,  13:03 Найти цитируемый пост)
 Office 2003 использует CToolBar 

Так и есть имя класса ихнего тулбара "MsoCommandBar", ну мне так моя прога сказала.

Мне не хочется велосипед изобретать!!! Это что получается каждый програмер будет себе свой тулбар делать. Чего сразу не GUI библиотеку.


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
Coocky
Дата 1.8.2006, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Цитата(Rapalex @  1.8.2006,  13:28 Найти цитируемый пост)
Это что получается каждый програмер будет себе свой тулбар делать

 smile 
Для этого есть и создавалось ООП smile 
Один раз написать класс, со всеми настройками, и очень редко. когда делать производный,для добавления новых методов.
Ты Думаешь я пользуюсь ресурсными контролами? smile 
3 месяца понадопилось для написания своей библиотеки. У меня все свое-и кнопки и слайдера. и полосы прокрутки и меню . Все свое.
И всего три класса базовых- СButton,  СWnd и CStatic.
Все!

Добавлено @ 13:53 
Цитата(Rapalex @  1.8.2006,  13:28 Найти цитируемый пост)
MsoCommandBar

Это CToolBar?



--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Rapalex
Дата 1.8.2006, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 732
Регистрация: 20.1.2006
Где: Украина -> Ник олаев

Репутация: 6
Всего: 8



Цитата(Coocky @  1.8.2006,  13:52 Найти цитируемый пост)
Это CToolBar?

Думаю нет, стандартный называется "ToolbarWindow32"

Этоя написал маленькую прогу которая даёт имя класса окна по хендлу, ну вообще она предназначяется для другого.

Цитата(Coocky @  1.8.2006,  13:52 Найти цитируемый пост)
3 месяца понадопилось для написания своей библиотеки. У меня все свое-и кнопки и слайдера. и полосы прокрутки и меню . Все свое.

Снимаю шляпу и большой респект, у меня ррождались анологичные идеи но както не слишком хочется  таким занимаьтсья, всёравно от стандартного MFC (обработка и перенаправление сообщений) не отойти. Меня "молодого" повергло в шок когда я увидел что CWnd::m_hWnd открытый чтлен.
Иными словами MFC это не слишком хорошо но даёт полный контроль.


--------------------
In vitium ducit culpae fuga.
Желание избежать ошибки вовлекает в другую.
(Horatius)
PM ICQ   Вверх
SeregaLBN
Дата 1.8.2006, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 178
Регистрация: 3.10.2003
Где: Киев

Репутация: нет
Всего: нет



Цитата(Rapalex @  1.8.2006,  14:31 Найти цитируемый пост)
Меня "молодого" повергло в шок когда я увидел что CWnd::m_hWnd открытый чтлен.
Иными словами MFC это не слишком хорошо но даёт полный контроль.
Неуверен. Ведь наряду с методами MFC'ишных оконных классов можно также пользоваться и чистыми GUI Win32 API ф-циями.
А для них и нужен в качестве параметра дискриптор она - HWND.

И, наверное, сразу возникает вопрос:
> Так почему же не сделать метод:
Код
HWND CWin::GetHandle() const { return m_hWnd; }


Я это понимаю так.
Раз само окно можно уничтожить вызовом
Код
::DestroyWindow(myWindow.GetHandle());
// ::EndDialog(...
// ::SendMessage(..., WM_CLOSE, ...
то, наверное, прятать m_hWnd смысла нет...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0499 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.