Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Вниз

Иконки в меню   Найти похожие ветки 

 
Maxim Pushkar   (2003-07-13 00:58) [0]

Столкнулся с проблемой. Хочу создать в меню пункты с иконками. Если делать как в MCK через LoadBmp(...) то все получается. Но не хочется держать столько картинок в ресурсах, а хочется присваивать иконки из ImageList-а. Подскажите, можно это сделать? И если да, то как?


 
SPeller ©   (2003-07-13 08:44) [1]

ImageList хранит иконки в ресурсах. А, кстати, чем они тебе не нравятся?


 
Maxim Pushkar   (2003-07-13 15:03) [2]

У меня есть желание подгружать иконки из bmp-файла, чтобы можно было их менять извне. Для тулбара все прекрасно работает, а вот для меню так не получается. Заодно вопрос. Как можно получить скажем битмап N-го элемента ИмиджЛиста?


 
Maxim Pushkar   (2003-07-14 23:47) [3]

Так что, никто не может сказать, как можно в меню показать иконки, динамически подгружаемые из bmp-файла?


 
SPeller ©   (2003-07-15 04:12) [4]

Ну так посмотри как это делает МСК, да сделай сам так же. Чё мучаешься?


 
Maxim Pushkar   (2003-07-15 23:13) [5]

Может подскажешь, что именно смотреть? Я уже пытался вникнуть, но я в писании на низком уровне не силен, а там исходников на мегабайт.


 
Кладов   (2003-07-16 16:17) [6]

Смотреть надо код, который сгенерил MCK, your_unit_1.inc


 
Maxim Pushkar   (2003-07-16 22:59) [7]

Смотрел. Там как раз и стоит LoadBmp, то есть подгрузка из ресурсов. А мне надо (ну очень надо), чтобы картинка бралась из bmp-файла, причем не всего, а из определенных координат (вариант ListView). Но сколько не кувыркаюсь, ничего не выходит.


 
Кладов   (2003-07-17 15:35) [8]

LoadBmp использует API-функцию LoadBitmap. Для загрузки из файла есть API-функция LoadImage.


 
Maxim Pushkar   (2003-07-17 23:40) [9]

Я эти функции уже прошел. Я даже использовал TBitmap с функцией LoadFromFile и все прекрасно работает. Но мне нужно не совсем это. Вернее совсем не это. Есть битмап, скажем, 128x16 пикселей. Засовываю его в ImageList и хочу показать в меню в качестве иконки 3, 5, 7... элемент 16x16 из этого ImageList"а. Как мне это можно сделать?
Пробовал создавать Bitmap и рисовать на нем, а потом хэндл битмапа подсовывать в пункт меню, но в итоге получал "черный квадрат Малевича". Может кто поскажет, что нужно сделать, чтобы нарисовать элемент ImageList"а в Bitmap, чтобы этот Bitmap потом подсунуть в меню?


 
Кладов   (2003-07-18 16:41) [10]

Зачем вообще в list view их засывывать, если меню работает только с битмапами. Если из listview, то все равно надо 1. извлечь иконку, 2. создать битмап и отрисовать ее на битмапе. 3. опять же дать хэндл битмапа. Если битмап черный, SaveToFile его и посмотреть, вдруг он правда не нарисовался.


 
Maxim Pushkar   (2003-07-18 23:12) [11]

Вопрос снимается. Выкрутил через onDrawItem на меню.
А насчет зачем скажу: хочу сделать программу с возможностью замены всех иконок на произвольные (в меню, тулбаре, на кнопках), причем это должно быть просто. Держать такую уйму отдельных картинок неудобно, а через один ImageList с подгружаемым файлом иконок получается проще и удобнее всего.



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.032 c
14-1078658912
Undert
2004-03-07 14:28
2004.04.04
Flash


1-1079429042
ПрогерШ
2004-03-16 12:24
2004.04.04
Как уменьшить размер екзешника?


1-1079083691
galina
2004-03-12 12:28
2004.04.04
Как вытнуть данные из ресурсного файла


9-1063796535
z1r[0]
2003-09-17 15:02
2004.04.04
из 3d-max в .x


1-1079605953
alextov
2004-03-18 13:32
2004.04.04
Перенос проекта из Delphi 6 в Delphi 5





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский