Этот топик читают: Гость
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 8 раз(а), последний 2025-01-08 05:54:33 |
|||
карма: 0 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Гость писал(а): после doClear Count не сбрасывается в 0Брехня, я проверил, сбрасывается Tad, лови исправления на SVN |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
nesco, сказал "А" говори и "Б".
1. BmpTransparent(bmp) считает, что окно PopupMenu не белое 2. При выборе пункта, иконка тоже меняет цвета на инверсные. восточная мудрость писал(а): Если человек делится яблоками, значит у него есть яблоки.
Если человек делится идеями, значит... у него нет яблок. Share.pas писал(а): procedure BmpTransparent;
var i,j:word; c:TColor; begin if Bmp.Empty then exit; c := Bmp.Pixels[0,0]; for i := 0 to Bmp.Width-1 do for j := 0 to Bmp.Height-1 do if Bmp.Pixels[i,j] = c then Bmp.Pixels[i,j] := clBtnFace; //GetSysColor(COLOR_BTNFACE); end; |
|||
карма: 25 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Tad, а причем здесь я? Я только устранил ошибку, связанную с отсутствием отображения картинок при повторной переинициализации. Да и вообще, я не автор этого компонента, чего это я за него отдуваться должен-то, а то еще на меня, да и в ультимативной форме
Tad писал(а): сказал "А" говори и "Б"------------ Дoбавленo: Tad, а что ты к нему вообще докопался, к этому меню ------------ Дoбавленo: Исправил, но вот притензии по инверсным картинкам я не принимаю, об этом было писано еще два года назад, простыми средствами не лечится, а если писАть обработчик, то получится тот же Ex. |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
nesco писал(а): Tad, а что ты к нему вообще докопался, к этому меню nesco писал(а): притензии по инверсным картинкам и строчку изменить PM.AddItem(PChar(+Caption),nil,[]); а то текст приклеивается к картинке. |
|||
карма: 25 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Tad писал(а): Просто решил применить в создаваемой программе и обломА чем тебя Ex не устроил, там нет этих проблем Tad писал(а): полосу выбора не "накладывать сверху", а подсовывать под картинку ?Я же тебе сказал, что доплнительный обработчик я не буду к нему делать, а обычными средствами это не предусмотрено. Tad писал(а): а то текст приклеивается к картинкеНу так и добавь при загрузке пунктов пробел в начало, зачем это надо в компонент толкать, опять частный случай. |
|||
карма: 22 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 8 раз(а), последний 2025-01-08 05:54:33 |
|||
карма: 0 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Гость писал(а): какой же это частный случай если "приклеивание" происходит всегдаЕсли есть иконки, а еси их нет, то он там и нафиг не нужен (вот тебе и частный случай). Ну зачем усложнять компонент-то. Я, лично, сторонник оставить это автору, на его усмотрение, и это не есть критическая ошибка. ------------ Дoбавленo: К тому же, прикленивание и наезд наблюдается толко при размере иконок > 16x16. И если добавить один пробел, как ты говоришь, то при бОльших размерах иконок тоже будет наблюдться приклеивание и наезды на иконки, а тогда на кой оно надо, такое исправление |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Сидят в ресторане два директора предприятий - японский и русский.
Вот и я так: А зачем "BmpTransparent(bmp);" в PopupMenu ? А если Bmp.Pixels[0,0] относится не к фону картики? Или, например, светложелтая картинка на синем фоне - фон пропал и картинки не видно. Может в Свойства добавить "Вкл.Выкл псевдопрозрачность" или вообще убрать BmpTransparent(bmp) из кодов PopupMenu ?Предприятия выпускают одинаковую продукцию. И объемы одинаковые. Пьют, закусывают, разговаривают. Р. - Сколько у тебя рабочих? Я. - Десять. А у тебя ? А у русского 100. Думает, что же сказать? Р. - Одинадцать. Закончили ужин и по домам. Утром русского будит тел.звонок. Я. - Слушай, я всю ночь не спал - все думал. А что у тебя делает одиннадцатый ? |
|||
карма: 25 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Все мне это давно известно. Я, лично, когда использую иконки для меню, то слежу за 0-м пикселем, и как-то не возникало проблем, а для увеличения контрастности вообще применю маскированные иконки с заливкой пустой области редкоиспользуемым цветом. Это, кстати, выход из данной ситуации, если применить заливку, ну, например, цветом clFuchsia, и его прописать цветом прозрачности.
|
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
nesco, а может вообще BmpTransparent(bmp) из PopupMenu убрать к бениной маме ?
|
|||
карма: 25 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Tad писал(а): BmpTransparent(bmp) из PopupMenu убратьДавай подождем еще мнений, убрать никогда не поздно, а вот закрасить фон иконки цветом clMenu, который заранее неизвестен, весьма проблематично. |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
nesco писал(а): а вот закрасить фон иконки цветом clMenu, который заранее неизвестен, весьма проблематично. |
|||
карма: 25 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Tad писал(а): Чел рисовал иконку, подбирал цвет фонаДостоинство иконок как раз в том, что можно: круглое, овальное, шестигранное, многоугольное, вывести именно на готовый существующий фон. Кому к черту нужны квадратные картинки вместо иконок, разве только тебе, ну и нарисуй картинку 15x15, не трогая нулевые координаты, кто тебе мешает. Посмотри внмательно как отрисовано большинство иконок и ты поймешь, о чем я говорю, а еще -- попробуй найди полностью квадратную на весь размер и если найдешь, то сколько это будет в процентах от общего количества? |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Тогда
Tad писал(а): Может в Свойства добавить "Вкл.Выкл прозрачность" |
|||
карма: 25 |
|