WebHU - Programozási kérdések és válaszok

A felhasználói felület lokalizálása

A lokalizációs projekten dolgozom, és amikor megváltoztatom a nyelvet, a felhasználói felület megzavarodik, mert egyes fordítások nagyok. Tegyük fel például, hogy van egy gomb a "Select All" szöveggel. De ha ez franciául van lokalizálva, akkor „Sélectionner tout”-ként olvasható. Ez nagyobb, mint a Select All, és így a gui is érintett lesz. Van valami mód a gui lokalizálására is.

c#
12.04.2010

  • Meg kell mondania, hogy ez milyen projekt - WinForms, WPF, web stb. 12.04.2010
  • ez egy webhely, és a változások alapvetően az Aspx oldalain vannak 12.04.2010

Válaszok:


1

mivel a "Select All" végleges szövege bármilyen hosszúságú szöveggé konvertálható, ami ebben a konkrét esetben a "Select All" "Sélectionner tout"-ra változik, és nem szeretné, hogy a felhasználói felület megzavaródjon, megadhatja a szélességet %-ban és reményt. hogy a végső szövegben elegendő hely van.

Nem vagyok benne biztos, hogy van-e mód a futás közbeni szélességgel a hossztól függően kezelni, mivel megszámolhatja a hosszt és pixelben megadhatja a szélességet, ez nem lesz jó ötlet. így legyen kevesebb szöveg, és adja meg a szélességet százalékban.

12.04.2010

2

Azt javaslom, hogy hozzon létre egy ál-kultúrát ennek kezelésére.

A pszeudo kultúra tartalmazza a legnagyobb fordítást egy megadott karakterlánchoz az összes kultúra közül.

Például, ha van egy Resx-fájlja strings.resx névvel, és egy másik kultúra alapú fájlja lehet, hogy franciául strings.fr.resx, és egy másik holland, strings.nl.resx.

Ezután hozzon létre egy másik fájlt string.pseudocult.resx néven, a pseudocultot le kell cserélni bármely olyan kultúrára, amelyet nem támogatna, például a string.az.resx

strings.resx

< data name="Select_All" xml:space="preserve">
    < value>Select All</value>
< /data>

strings.fr.resx

< data name="Select_All" xml:space="preserve">
    < value>Sélectionner tout</value>
< /data>

strings.nl.resx

< data name="Select_All" xml:space="preserve">
    < value>Alles selecteren</value>
< /data>

strings.az.resx

< data name="Select_All" xml:space="preserve">
    < value>Sélectionner tout</value>
< /data>

Az az értéket úgy kell mérni, hogy megtaláljuk a leghosszabb karakterláncot GUI alapján a támogatott kultúrák fordításait felhasználva, ebben az esetben a leghosszabb GUI alapú fordítás a francia kultúrában volt. Ez lényegében megadja az alkalmazásban lévő vezérlőelemek minimális méretét, valamint betekintést nyújt abba, hogy érdemes-e módosítani a fordítást.

Ellenkező esetben, ha ezt ki akarja hagyni, tartsa meg az eredeti kívánt méret 5–300%-ánál kisebb és az eredeti méret 5–170%-ánál nagyobb szavakat tartalmazó vezérlőelemek méretét.

13.07.2011

3

Egyszerűen nyissa meg a felhasználói felületet a Visual Studio Designerben, és állítsa be a Form vagy UserControl Localizable tulajdonságát true értékre. Ezzel a lépéssel automatikusan egy új .resx fájl kerül hozzáadásra a felhasználói felület eleméhez, amely tartalmazza a tulajdonságok összes értékét. Ezeket az értékeket a rendszer az első lépésben alkalmazza, és akkor lép működésbe, ha az aktuális kultúrához megfelelő értékeket talál.

Ezután egyszerűen állítsa át a Language tulajdonságot arra a nyelvre, amelyet támogatni szeretne, amelynek saját szövegkészlete és elrendezése van. Ha most bármilyen módosítást hajt végre a felhasználói felületen, akkor beállítja, hogy egy másik .resx kerüljön hozzáadásra az összetevőhöz, és minden változtatás bekerüljön ebbe a fájlba.

Tehát egyszerűen hozza létre tetszés szerint a vezérlőt, állítsa a Localizable tulajdonságot true-re, állítsa át a Language tulajdonságot az új támogatott nyelvre, és állítsa be a gui-t igény szerint.

A lokalizációról részletesebb cikk is található az MSDN-en.

17.12.2012
Új anyagok

A rádiógomb ellenőrzött eseményének használata a jQueryben
Ebben a cikkben látni fogjuk, hogyan kell dolgozni a jquery választógombbal ellenőrzött eseményeivel. A választógombok HTML gombok, amelyek segítenek kiválasztani egyetlen értéket egy csoportból...

Körkörös függőségek megoldása terraformban adatforrásokkal – lépésről lépésre
Mi az a körkörös függőségek Dolgozzunk egy egyszerű eseten, amikor az SQS-sor és az S3-vödör közötti körkörös függőség problémája van egy egymástól függő címkeérték miatt. provider..

Miért érdemes elkezdeni a kódolást 2023-ban?
01100011 01101111 01100100 01100101 — beep boop beep boop Világunk folyamatosan fejlődik a technológia körül, és naponta fejlesztenek új technológiákat a valós problémák megoldására. Amint..

🎙 Random Noise #2  – Örökbefogadás és hit
az analitika íratlan világának gondozása Szeretné, hogy ezek a frissítések a postaládájába kerüljenek? Iratkozzon fel itt . "Ha önvezető autókat gyártanak, akkor mi miért ne..

A legrosszabb politika és prediktív modellek májátültetésre jelöltek számára az Egyesült Államokban
A máj (vagy óangolul lifer) az emberi test legnehezebb belső szervére utal, amely csendesen működik a nap 24 órájában. Mit csinál a máj? 500 feladatot hajt végre a szervezet egészségének..

5 webhely, amely 2022-ben fejleszti front-end fejlesztői készségeit
Frontendmentor.io A tényleges projektek létrehozásával a Frontendmentor.io segítséget nyújt a front-end kódolási képességeinek fejlesztésében. A kódolást azután kezdheti meg, hogy..

Mikor kell használni a Type-t az interfészhez képest a TypeScriptben?
A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben..