Цитата:
Сообщение от Oreon
Но проблему у меня даже "ListBox1.Width := ln + ListBox1.Width - ListBox1.ClientWidth;" не убирает и я разобрался почему - у меня в настройках семерки стоит отображение шрифтов 125%
|
Мне кажется, что тут все может зависеть от того, в какой момент выполняется установка размеров. Если не путаю, в OnCreate оконные элементы со своими Handle могут быть еще не созданы, и всё считается в пропорциях, записанных в DFM, которые могут отличаться от фактических.
Кроме того, раньше в Delphi наблюдалось неверное масштабирование шрифтов, рассогласованное с размерами компонентов. Не помню точно, но вроде бы баг проявлялся именно тогда, когда разработка велась на машине с крупными шрифтами. Обойти его никак было нельзя, кроме как правкой Controls.pas, найденной эмпирически. Как с этим в модных версиях Delphi, не знаю.