Информация об изменениях

Сообщение Re[3]: Программы для тестирования размеров элементов диалога от 31.12.2024 13:15

Изменено 31.12.2024 14:05 Философ

Re[3]: Программы для тестирования размеров элементов диалога
Здравствуйте, Евгений Музыченко, Вы писали:

Ф>>Неужиле для С++ ничего лучше MFC не придумали?

ЕМ>А вот про MFC я ничего не говорил.

А что ещё это может быть, если уж речь про диалоги!? Кроме как в контексте MFC я нигде их больше не встречал.

ЕМ>А я бы не стал этого утверждать, толком не понимая, что такое MFC.


Я понимаю что это: кривая минималистичная надстройка над Win32API. Это единственное место, где я видел диалоги. Я бы сказал, что эта часть API оставлена для обратной совместимости — чтоб старый софт работал. Давно уже это пора пометить как obsolete, а лучше deprecated — чтоб варнинги вываливало.
Re[3]: Программы для тестирования размеров элементов диалога
Здравствуйте, Евгений Музыченко, Вы писали:

Ф>>Неужиле для С++ ничего лучше MFC не придумали?

ЕМ>А вот про MFC я ничего не говорил.

А что ещё это может быть, если уж речь про диалоги!? Кроме как в контексте MFC я нигде их больше не встречал.

ЕМ>А я бы не стал этого утверждать, толком не понимая, что такое MFC.


Я понимаю что это: кривая минималистичная надстройка над Win32API. Это единственное место, где я видел диалоги. Я бы сказал, что эта часть API оставлена для обратной совместимости — чтоб старый софт работал. Давно уже это пора пометить как obsolete, а лучше deprecated — чтоб варнинги вываливало.

UPD:

Many Windows APIs do not have an DPI context

Many legacy Windows APIs do not include a DPI or HWND context as part of their interface. As a result, developers often have to do additional work to handle the scaling of any DPI-sensitive information, such as sizes, points, or icons. As an example, developers using LoadIcon must either bitmap stretch loaded icons or use alternate APIs to load correctly-sized icons for the appropriate DPI, such as LoadImage.

https://learn.microsoft.com/en-us/windows/win32/hidpi/high-dpi-desktop-application-development-on-windows?redirectedfrom=MSDN#testing-your-changes

Вот эти самые API я бы и назвал legacy. Более того, если рисовать с помощью direct2d или direct3d, то DPI будет учитываться автоматически. Например, в WPF с этим вообще проблем нет — оно не пиксели использует.