Problém s rozlišením/velikostí textu   otázka

VB.NET

Dobrý den,

v desktopové windows forms aplikaci řeším problém s korektním zobrazením jednotlivých objektů na formuláři. Problém úzce souvisí s nastavením velikosti textu ve Windows (100,125 a 150%).

Pokud aplikaci, kterou programuji při použití zobrazení velikosti textu 100% přenesu na jiný počítač, kde je velikost textu nastavena na 125%, dojde k "deformaci" některých ovladacích prvků (labely jsou ořezány, texty se nevejdou do tlačítek a v některých případech dojde i k mírným změnám pozice objektů).

Vím, že toto chování je možné v určitým mezích ovlivnit pomocí vlastností Anchor a Dokování a především pak pomocí vlastnosti AutoScaleMode vlastního formuláře, ale zatím se mi nepodaří dopracovat se k uspokojivému výsledku.

Nemáte s tím někdo zkušenosti? Můžete prosím poradit, jaký je nejoptimálnější postup při vývoji desktopové aplikace, které by byla pokud možno nezávislá na nastavené velikosti zobrazovaného textu ve Windows?

V mém případě se jedná o konfiguraci:

OS: Windows 7 Ulitmate, Visual Studio 2010.

Budu vděčný za jakékoliv rady či zkušenosti s výše uvedeným.

Děkuji

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ak môžte, použite WPF, to podobné problémy nemá.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Problém se zde řešil a pamatuji si, že názor diskutujících odborníků byl asi v tom smyslu, že ve WinForm je každá snaha marná. Tak mě napadá, zda by nebylo možné nastavení velikosti písma detekovat, změnit v aplikaci na 100% a při ukončení vrátit na původní hodnotu.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Díky za odpovědi.

Ano, řešením zřejmě bude použití komponenty TableLayout Panel nebo nějakého jiného kontejneru, který si s uvedeným poradí.

O výhodě WPF v tomto směru vím, nicméně problém je v mém případě nutné řešit pomocí "standardní" technologie Windows Forms.

V každém případě děkuji.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Použijte TableLayoutPanel a FlowLayoutPanel pro rozmístění prvků na formuláři. Ideální řešení.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Dobrý den,

děkuji za odpověď.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback