powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Запрет масштабирования шрифта
9 сообщений из 9, страница 1 из 1
Запрет масштабирования шрифта
    #39677811
Фотография Max-xaM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пишу прогу для разных людей.
Некоторые несознательные заходят у винды в Панель управления - Экран - Удобство чтения с экрана. Ставят там 125 или 150 процентов, т.к. "мы старенькие и плохо видим".
В результате в программе напичканной разными кнопками и таблицами все удобное форматирование слетает к е..... Надписи на кнопках видны наполовину, жесткая высота строк в стринггриде обрезает внутренний текст и т.п.
Какие настройки у программы сделать, чтобы винда не трогала ее дочерние формы, пытаясь растянуть шрифт?
Перелопачивать прогу, чтобы всем было красиво - очень долго, более 10 тыщ строк накопилось.
Меньшее разрешение делать - не выход, т.к. нужно, чтобы на экране 1280х1024 умещалось все, что нужно для одновременного просмотра без скроллинга. Если делают 1024х768, то многое нужное уходят за границы экрана.

P.S. Пишу на старом Embarcadero, если это принципиально.
...
Рейтинг: 0 / 0
Запрет масштабирования шрифта
    #39677828
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Max-xaMКакие настройки у программы сделать, чтобы винда не трогала ее дочерние формы, пытаясь
растянуть шрифт?

За такие желания разработчику надо бы дать по шее, ибо желания пользователя по оформлению
важнее того, что там себе надизайнено. Если ты не умеешь сделать вменяемый резиновый
дизайн - RTFM TCustomForm::Scaled и быстрые ноги тебе в руки.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Запрет масштабирования шрифта
    #39677977
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВ результате в программе напичканной разными кнопками и таблицами все удобное форматирование слетает к е..... Надписи на кнопках видны наполовину, жесткая высота строк в стринггриде обрезает внутренний текст и т.п.


Ну, пиши лучше, качественнее. И всё будет ок.
авторКакие настройки у программы сделать, чтобы винда не трогала ее дочерние формы, пытаясь растянуть шрифт?


никакие. Это глобальные установки DPI устройства -экрана.

авторПерелопачивать прогу, чтобы всем было красиво - очень долго, более 10 тыщ строк накопилось.
Меньшее разрешение делать - не выход, т.к. нужно, чтобы на экране 1280х1024 умещалось все, что нужно для одновременного просмотра без скроллинга. Если делают 1024х768, то многое нужное уходят за границы экрана.


Это не размер экрана. Это разрешение дисплея в точках на дюйм (DPI).
...
Рейтинг: 0 / 0
Запрет масштабирования шрифта
    #39678282
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DPI and Device-Independent Pixels

DPI-Aware Applications
To avoid DWM scaling, a program can mark itself as DPI-aware. This tells the DWM not to perform any automatic DPI scaling. All new applications should be designed to be DPI-aware, because DPI awareness improves the appearance of the UI at higher DPI settings.

A program declares itself DPI-aware through its application manifest. A manifest is a simply an XML file that describes a DLL or application. The manifest is typically embedded in the executable file, although it can be provided as a separate file. A manifest contains information such as DLL dependencies, the requested privilege level, and what version of Windows the program was designed for.

To declare that your program is DPI-aware, include the following information in the manifest.

Код: xml
1.
2.
3.
4.
5.
6.
7.
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" >
  <asmv3:application>
    <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
      <dpiAware>true</dpiAware>
    </asmv3:windowsSettings>
  </asmv3:application>
</assembly>
...
Рейтинг: 0 / 0
Запрет масштабирования шрифта
    #39678317
d7i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DPI-Aware Applications - где-то я читал, что это актуально только для сенсорных экранов...
Что-то смутно я вспоминаю, что пытался манипулировать этим в манифесте, но в обычном декстопном приложение
ничего не срабатывало. Впрочем, это было давно и я могу ошибаться...
...
Рейтинг: 0 / 0
Запрет масштабирования шрифта
    #39678318
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Манифесты вообще имеют привычку не срабатывать без каких-либо диагностических сообщений.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Запрет масштабирования шрифта
    #39678335
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
d7iDPI-Aware Applications - где-то я читал, что это актуально только для сенсорных экранов...
это неправда

Dimitry SibiryakovМанифесты вообще имеют привычку не срабатывать без каких-либо диагностических сообщений.

не нравится манифест - вызывайте
Код: plaintext
1.
SetProcessDpiAwareness(PROCESS_PER_MONITOR_DPI_AWARE);




ЗЫ
винда 8.1+ требуется
...
Рейтинг: 0 / 0
Запрет масштабирования шрифта
    #39678378
d7i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилЗЫ
винда 8.1+ требуется

Вона оно чё... Невнимательно я читал документацию.
То-то оно у меня на 7 не работало...
...
Рейтинг: 0 / 0
Запрет масштабирования шрифта
    #39678635
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
d7i, если запускаешь на 7-ке апликуху старого образца (XP style), щелкаешь на экзешник правой кнопкой мыши, "Свойства", "Совместимость", "Изменить параметры для всех пользователей", галочку на "Отключить масштабирование изображения при высоком разрешении экрана", кнопка "Применить".
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Запрет масштабирования шрифта
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]