MOJE PROGRAMY I TEKSTY

Programy i teksty > Programy, kody źródłowe > THighDPIHelper

THighDPIHelper

Ostatnia aktualizacja: sobota 13 października 2018r.

Komponent THighDPIHelper mający na celu wspomóc w szybkim dostosowaniu aplikacji tworzonych w Delphi do ekranów wysokiej rozdzielczości. Więcej na ten temat możesz przeczytać w poradzie Aplikacje DPI-Aware w Delphi.

Użycie komponentu sprowadza się do położenia go na każdej jednej formatce programu, w którym chcemy zastosować dostosowanie. Oczywiście w ustawieniach projektu trzeba zaznaczyć także opcję włączenia obsługi High-DPI. W ramach podniesienia zgodności aplikacji z DPIAware komponent wykonuje następujące operacje:

  • Skaluje wszystkie obrazki przycisków TBitBtn i TSpeedButton
  • Skaluje wszystkie obrazki na listach TImageList
  • Zmienia własność ItemHeight komponentów bazujących na TCustomComboBox

Komponenty projektowane są dla Delphi 10 Seattle, lecz powinny działać także z wersjami starszymi oraz nowszymi. Aby zainstalować komponent w Delphi należy:

  1. Wypakować zawartość archiwum do katalogu, w którym chcemy umieścić komponenty.
  2. Otworzyć plik Packages\HIghDPIHelper_D300.groupproj w Delphi.
  3. Ustawić platformę na 64-bit Windows dla paczki HighDPIHelperR i skompilować.
  4. Ustawić platformę na 32-bit Windows dla paczki HighDPIHelperR i skompilować.
  5. Użyć opcji instalacji dla paczki HighDPIHelperD.
  6. Komponent zostanie zainstalowany na karcie Windows 10.

Opis komponentu:

  • Właściwości:
    • Scale: Real - zwraca wartość rzeczywistą skalowania, jakie należy zastosować dla aplikacji. Jeśli aplikacja projektowana była dla 96 DPI, a ustawienia systemu wskazują 120 DPI (125%), to zwróconą wartością będzie 1,25.
    • ExcludeComponents: TStrings - lista nazw komponentów, które mają być wykluczone z automatycznego procesu dostosowania na starcie. Jeśli przykładowo używamy własnych list obrazków dedykowanych różnym rozdzielczością - listy te można wykluczyć.
  • Metody:
    • ScaleImageList(imgList: TImageList) - skaluje przekazaną listę obrazków.
    • ScaleBitmap(btn: TBitmap) - skaluje bitmapę.
    • ScaleCombos(cb: TCustomComboBox) - przelicza własność ItemHeight dla przekazanego komponentu dziedziczącego po TCustomComboBox.
    • ScaleInt(const aValue: Integer): Integer; - zwraca wartość całkowitą po przeskalowaniu; przydatne podczas obliczeń podczas samodzielnego rysowania elementów lub rozmieszczania dynamicznie tworzonych komponentów.

Rezultaty

Rezultaty zastosowania komponentu THighDPIHelper

Powyżej aplikacja uruchomiona na ekranie ze skalowaniem 150%, z włączoną obsługą HighDPI lecz bez dokonania jakichkolwiek zmian w zakresie jej dostosowania oraz po użyciu komponentu THighDPIHelper.

  • Ikony paska narzędzi zostały powiększone.
  • Ikony przycisków zostały powiekszone.
  • Ikony listy zostały powiększone, co wyeliminowało błędne wyświetlanie grafiki.

Download


Wróć
[Komentarze] | Share Podziel się

Ocena powyżej opisanego materiału znajduje się w dziale Download


Wszystkie programy i teksty na tej stronie są dostępne za darmo, jednak utrzymywanie jej kosztuje (szczególnie przy niskim kursie dolara przez wzgląd na mniejsze wpływy z reklam). Jeżeli spodobał Ci się któryś z programów lub skorzystałeś z któregoś z moich tekstów i chcesz mi wynagrodzić moją pracę to możesz przelać symboliczną złotówkę na moje konto
mBank: 47 1140 2004 0000 3202 2357 3749
Nazwa odbiorcy: Dawid Najgiebauer
Wszystkim, którzy wspierają serwis dziękuję!
Strona istnieje od 25.01.2001
Ta strona używa plików Cookie.
Korzystając z niej wyrażasz zgodę na przetwarzanie danych a zakresie podanym w Polityce Prywatności.
 
archive To tylko kopia strony wykonana przez robota internetowego! Aby wyświetlić aktualną zawartość przejdź do strony.

Optymalizowane dla przeglądarki Firefox
© Copyright 2001-2018 Dawid Najgiebauer. Wszelkie prawa zastrzeżone.
Ostatnia aktualizacja podstrony: 15.07.2018 16:40
Wszystkie czasy dla strefy czasowej: Europe/Warsaw