Вверх ↑
Этот топик читают: Гость
Ответов: 18
Рейтинг: 0
#1: 2024-04-29 22:49:19 ЛС | профиль | цитата
Столкнулся с ситуацией. Элемент CheckBox (Color = clRed, ширина х длина=25 х 21, WinStyle=default). Компилирую проект и запускаю файл .exe. На одном из компьютеров этот элемент отрисовывается без цвета. Аналогично, если устанавливаю Color синий, зелёный и т. д. Остальные элементы (кнопки, панели, ползунки, текст) в проекте окрашиваются нормально, в цвете. Компьютер Win7/64, видеокарта Radeon 560, монитор B22W (22 дюйма). На других компьютерах Win7/32 и даже XP этот же элемент CheckBox, запускаемый через файл exe, раскрашивается нормально. Вопрос — кто-нибудь сталкивался с подобным? В какую сторону копать — драйвер видеокарты, драйвер монитора, система?
карма: 0

0
Ответов: 4628
Рейтинг: 749
#2: 2024-04-30 19:27:14 ЛС | профиль | цитата
Попробуй темы оформления в системе попереключать.
карма: 26

0
Ответов: 18
Рейтинг: 0
#3: 2024-05-01 11:49:07 ЛС | профиль | цитата
Хорошо, попробую изменить тему Win, как только появится доступ к компьютеру. Но хочу переформулировать вопрос. Какое есть отличие в исходных кодах элемента CheckBox в HiAsm (в части свойства Color) по сравнению с другими элементами, например, TrackBarRush, которые на всех компьютерах в моём проекте окрашиваются нормально? У меня ревизия рабочей копии элементов HiAsm = 2050. Может есть или были изменения в репозитории или что-то связано с разрядностью Win 64?
карма: 0

0
Ответов: 2236
Рейтинг: 676
#4: 2024-05-01 20:24:14 ЛС | профиль | цитата
RomanRoman писал(а):
Какое есть отличие в исходных кодах элемента
Отрисовкой CheckBox-а занимается ос так как ей это нужно, а TrackBarRush полностью отрисовывается так как заданно в коде.
RomanRoman, выделяйте элемент и нажимайте Ctrl + F, не стесняйтесь. Понятно что с первого раза будет многое не понятно, но со временем...

Редактировалось 1 раз(а), последний 2024-05-01 20:26:07
карма: 11

0
Ответов: 18
Рейтинг: 0
#5: 2024-05-03 11:28:46 ЛС | профиль | цитата
Выяснилось, что на раскрашивание CheckBox влияет неподключённый (!) контейнер ChildPanel (с элементами внутри). Этот контейнер остался от старого проекта HiAsm и он ни к чему не подключался на главной странице. Я посчитал, что неподключённый контейнер будет игнорироваться компилятором HiAsm. Но если ChildPanel удалить из проекта, то раскрашивание чекбокса CheckBox восстановливается в нормальном режиме, включая «подозрительный» компьютер Win7/64.

Редактировалось 1 раз(а), последний 2024-05-03 11:33:19
карма: 0

0
Ответов: 2236
Рейтинг: 676
#6: 2024-05-04 11:44:44 ЛС | профиль | цитата
RomanRoman писал(а):
неподключённый (!) контейнер ChildPanel (с элементами внутри)
Для элементов интерфейса (отображаемых) нет такого понятия "неподключены".
RomanRoman писал(а):
Я посчитал, что неподключённый контейнер будет игнорироваться компилятором HiAsm.
Интересно по какой логике это должно происходить. Визуальный контейнер (ChildPanel) если даже на схеме не подключен, скрыт, неактивен и находится за пределами размера формы, то это еще не означает что в момент работы программы он не будет задействован.
карма: 11

0
Ответов: 18
Рейтинг: 0
#7: 2024-05-08 18:09:36 ЛС | профиль | цитата
Окончательное решение ребуса. В старом (неподключённом к схеме) контейнере ChildPanel имелась иконка StyleXP. После её удаления раскраска CheckBox стала правильной на всех без исключения компьютерах.
карма: 0

0
Ответов: 2236
Рейтинг: 676
#8: 2024-05-08 20:10:55 ЛС | профиль | цитата
RomanRoman, выделить элемент StyleXP, нажать F1, прочитать Замечания, вот и весь ребус. Думаю обвинения с CheckBox-а можно снять, Netspirit был прав в своем посте.
карма: 11

0
8
Сообщение
...
Прикрепленные файлы
(файлы не залиты)