Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

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

 
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 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.039 c
1-1079538058
Александр1
2004-03-17 18:40
2004.04.04
Как добавить лист в Excel?


3-1078348575
yaric
2004-03-04 00:16
2004.04.04
Возможно ли отсортировать данные в TTable


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


14-1078655373
Sniper-Max
2004-03-07 13:29
2004.04.04
Мышь - как руль с пидалями...


1-1079037912
Павел
2004-03-11 23:45
2004.04.04
Печать StringGrid