| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Как устранить "съезд" надписей при использовании 1 |
| Автор: santey 25.6.2007, 19:20 |
| Подскажите, что можно сделать в данном случае. Когда пользователь использует обычные размеры шрифтов приложение работает нормально, но как установит 120 dpi и выше, все сразу съезжает. Может быть какая общая блокировка есть сразу для всех компонентов, чтобы шрифт не менялся и был обычным размером, а то если для каждого компонента писать код, то накладно получается. |
| Автор: Klin 25.6.2007, 19:27 |
| Имхо блокировки нет, система сама выбирает марштаб. Хотя кто его знает... ps. можно сделать обработку на определения марштаба или рисовать текст через Canvas |
| Автор: mr.Anderson 25.6.2007, 20:58 |
| santey, в идеале все надписи должны быть рисунками (я так последнее время стал делать). Т.е. полностью рисованный интерфейс, отказавшись от всех визуальных контролов, кроме TImage. |
| Автор: jonie 25.6.2007, 23:12 |
| mr.Anderson аха... у меня 1680*1050 (21` widescreen) - мне умереть? пересчитывать надо размеры элементов, в зависимости от размеров шрифтов. Делать рисованный картинками шрифт - верх неуважения к пользователям имхо. |
| Автор: Lazin 26.6.2007, 08:06 | ||
Можно установить фиксированный шрифт у главной формы, а у контролов ParentFont = true. Еще у формы (TForm) есть свойство Scaled если оно равно true контролы подстраиваются под изменение шрифта, если false, то нет. ЗЫ имхо использовать в программе нестандартный шрифт, или полностью нарисованный интерфейс непрофессионально. Юзверь должен иметь возможность настраивать размер шрифта под себя, если у него к примеру хреновое зрение, то он будет большой шрифт использовать. |
| Автор: mr.Anderson 27.6.2007, 19:46 |
| Klin, спасибо за поддержку. Что такого криминального в разном разрешении? Есть такое понятие, как Stretch у TImage'ов. Перерасчет разрешения можно сделать. Так что это проблема решаема, зато интерфейс такой, какой вы хотите. |
| Автор: santey 20.12.2012, 11:16 |
| Извиняюсь не в тот раздел написал |