Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1211

 

Frage:

Es sind nur Monitore mit einer Auflösung von 1920x1080 verfügbar.

Wie kann die 4K-Auflösung emuliert werden, um Schaltflächen- und Schriftgrößen für 4K-Monitore anzupassen?

 
Vitaly Muzichenko:

Frage:

Es sind nur Monitore mit einer Auflösung von 1920x1080 verfügbar.

Wie kann die 4K-Auflösung emuliert werden, um Schaltflächen- und Schriftgrößen für 4K-Monitore anzupassen?

Ich habe darüber nachgedacht, als ich einen EA mit einem Panel erstellt habe, war aber zu faul. Im Allgemeinen war die Idee, die Bildschirmauflösung zu verringern und zu sehen, wie es aussehen würde. Wenn es beim Herauszoomen normal aussieht, sollte es sich auch beim Heranzoomen normal verändern.
 
Alexey Viktorov:
Ich habe einmal darüber nachgedacht, als ich einen EA mit einem Panel erstellt habe, war aber zu faul. Im Allgemeinen war die Idee, die Bildschirmauflösung zu verringern und zu sehen, wie es aussehen würde. Wenn es beim Herauszoomen normal aussieht, sollte es sich auch beim Heranzoomen normal verändern.

Hier sind 4K und1920x1080


 
Vitaly Muzichenko:

Hier sind 4K und1920x1080


Und wenn Sie die Auflösung auf 1280x720 setzen, wie sehen dann die Tasten aus? Hier ist ein Testfall.

Natürlich ist es einfacher, einen Monitor zu kaufen. Aber es ist teurer. Und es ist mühsam, die Auflösung des Bildschirms zu ändern.

Haben Sie in der Dokumentation ein Beispiel für die Berechnung des Skalierungskoeffizienten gesehen?

//--- создаём кнопку шириной 1.5 дюйма на экране 
int screen_dpi = TerminalInfoInteger(TERMINAL_SCREEN_DPI); // получим DPI монитора пользователя 
int base_width = 144;                                      // базовая ширина в экранных точках для стандартных мониторов c DPI=96 
int width      = (button_width * screen_dpi) / 96;         // вычислим ширину кнопки для монитора пользователя (с учётом его DPI) 
... 
  
//--- вычисление коэффициента масштабирования в процентах 
int scale_factor=(TerminalInfoInteger(TERMINAL_SCREEN_DPI) * 100) / 96; 
//--- использование коэффициента масштабирования 
width=(base_width * scale_factor) / 100;

Vielleicht ist es gar nicht nötig, die Einstellung und Kontrolle vorzunehmen?

 
Alexey Viktorov:

Und wenn Sie die Auflösung auf 1280x720 einstellen, wie sehen dann die Schaltflächen aus? Hier ist ein Testfall.

Natürlich ist es einfacher, einen Monitor zu kaufen. Aber es ist teurer. Und die Einstellung der Bildschirmauflösung ist eine lästige Angelegenheit.

Haben Sie in der Dokumentation ein Beispiel für die Berechnung des Skalierungsfaktors gesehen?

Vielleicht ist eine Anpassung und Überprüfung gar nicht notwendig?

Es funktioniert nicht und es gibt keine Idee, wie man 4K emulieren kann.

1280х720


2560х1440


 
Vitaly Muzichenko:

Es funktioniert nicht und ich habe keine Ahnung, wie ich 4K emulieren kann.

1280х720


2560х1440


Was funktioniert nicht? Meine Fantasie über die Änderung der Bildschirmauflösung?
 
Alexey Viktorov:
Was funktioniert nicht? Meine Fantasie über die Änderung der Bildschirmauflösung?

Ja, absolut richtig.

Ich habe den Code noch nicht ausprobiert.
 
Vitaly Muzichenko:

Ja, absolut richtig.

Ich habe den Code noch nicht ausprobiert

https://www.mql5.com/ru/forum/324812#comment_13650469

Ist dies die Art von Thema, die Sie hervorheben wollen?

Das muss die Antwort sein:

https://www.mql5.com/ru/forum/324812/page6#comment_14073023

Использование MT5 на мониторе с разрешением 4К
Использование MT5 на мониторе с разрешением 4К
  • 2019.10.22
  • www.mql5.com
Добрый день, обращаюсь к команде разработчиков MT5. Я использую монитор с разрешением 4К размером 43”...
 
Igor Zakharov:

https://www.mql5.com/ru/forum/324812#comment_13650469

Ist dies die Art von Thema, die Sie hervorheben wollen?

Das muss die Antwort sein:

https://www.mql5.com/ru/forum/324812/page6#comment_14073023

Und die Diskussion endete dort mit der Anwendung von

TerminalInfoInteger(TERMINAL_SCREEN_DPI);
 
Igor Zakharov:
Alexey Viktorov:

Und schließlich endete die Diskussion dort bei der Verwendung von

Ok, ich werde nach einem Modell mit 4K suchen.

Grund der Beschwerde: