Megosztás a következőn keresztül:


Vezérlők rendszerezése akadálymentes vászonalapú alkalmazásokban

Az alkalmazás vezérlőit úgy kell rendszereznünk, hogy segítse a képernyőolvasót használó felhasználókat a sorrendben történő navigálásban. A logikai sorrend csökkenti a billentyűzetfelhasználók zavarát, és elősegíti a termelékenységet.

Kifejező képernyőnév

Képernyő betöltésekor a képernyőolvasók felolvassák a képernyő nevét. A felhasználók tájékozódásának elősegítéséhez válasszon jól értelmezhető nevet.

A vezérlők fájában vagy a Power Apps Studio tulajdonságok paneljén módosíthatja a képernyő nevét. Jelölje ki a képernyőt, majd válassza a Tollikon kiválasztása a név szerkesztéséhez. a képernyő átnevezéséhez.

A képernyőnevek a vezérlőfáról vagy a tulajdonságok panelről módosíthatók, amint az a képen látható.

A képernyőn az első elem a neve. Vizuálisan rejtett és csak a képernyőolvasót használó felhasználóknak elérhető.

Az új képernyő betöltésekor a Power Apps a képernyő nevére koncentrál. Ha a képernyő betöltésekor azonnal a SetFocust használja, a képernyő nevét nem olvassák fel. Érdemes lehet látható címet létrehozni, és egy élő régióvá tenni, ahol környezetben is be lehet jelenteni a változást.

Logikai vezérlő sorrendje

A képernyőolvasót használó felhasználók a tartalomban sorrendben navigálhatnak. A sorrendet a vezérlőelemek pozíciója határozza meg fentről lefelé, majd balról jobbra. A vezérlőelem mérete nem számít, csak az X és az Y tulajdonságai számítanak.

Ebben a példában az A jelenik meg először a sorrendben, mivel az a legközelebb áll a felső részhez. A B és a C függőleges pozíciója megegyezik, de mivel B közelebb áll a bal oldalhoz, és ezért a C előtt jelenik meg. A D jelenik meg utoljára, mivel legtávolabb van a felső résztől.

Hogyan befolyásolja a pozíció a 4 vezérlőelem sorrendjét.

Megjegyzés

  • Egy alkalmazás szerkesztésekor előnézeti módban a vezérlő sorrendje teljesítményi okok miatt nem frissül. Az alkalmazás közzétételekor és futtatásakor a sorrend helyes lesz.
  • A vezérlőelemek sorrendje nem azonos a sorrenddel a vezérlőelemek fanézetében a Power Apps Studio felületén. A fanézet a vezérlőket az alkalmazáshoz való hozzáadásnak megfelelően rendezi. Az alkalmazás futtatásának időpontja nem befolyásolja a vezérlőelemek sorrendjét.
  • Ha egy vezérlőelem X vagy Y értéke kifejezésre van állítva, a vezérlőelem sorrendje nem frissül a kifejezés eredményének megváltozásakor. A sorrend kiszámítása és rögzítése az alkalmazás mentésekor történik, az alkalmazás kezdeti állapota alapján kiértékelve a kifejezéseket.
    • Ha azért módosítja a pozícióját, mert más vezérlők rejtve vannak vagy megjelennek, automatikus elrendezésű tárolókkal kezelheti az X és az Y karaktert .
    • Az összes vezérlőelemet logikusan is elhelyezheti, függetlenül a kifejezésértékektől. Ha például az A vezérlőnek mindig a B vezérlő alatt kell lennie, és a B néha rejtve lehet, állítsa be A Y-ját · If(B.Visible, B.Y + B.Height, B.Y + 1). Az 1 hozzáadása biztosítja, hogy A mindig B alatt legyen, még akkor is, ha B rejtve van.

Csoportosított vezérlők

Az alapértelmezett sorrend megfelelő az elkülönített tartalomhoz, de csoportosított tartalomhoz nem. Tekintse meg két csempét egymás mellett, Téglalap vezérlőkkel rajzolva. Mindegyik csempéhez tartozik cím. A címsor alatt két, függőlegesen halmozott gomb látható: az első mozaikhoz A és B, a másikhoz pedig C és D.

Példa a helytelen gyakorlatra: a vezérlőelemek vízszintes struktúrában vannak rendezve.

Az alapértelmezett sorrend fentről lefelé, majd balról jobbra halad. A vezérlőelemek sorrendje tehát a következő:

  1. Bal Téglalap
  2. Jobb Téglalap
  3. Bal címsor
  4. Jobb címsor
  5. A
  6. C
  7. B
  8. D

Ez a struktúra nem jelenti azt, hogy A és B együtt van, és hasonlóképpen hogy C és D is együtt van.

A kapcsolódó tartalmak csoportosítására használjon Tárolókat. A Tárolóban található összes vezérlő együtt, egymás után jelenik meg. Egy tárolón belül a vezérlők rendezése ugyanolyan szabály szerint történik: felülről lefelé, majd balról jobbra.

Az előző példa Téglalapja helyett a Tárolók használata esetén a vezérlők sorrendje most már logikus a képernyőolvasót használó felhasználók számára:

  1. Bal Tároló
  2. Bal címsor
  3. A
  4. B
  5. Jobb Tároló
  6. Jobb címsor
  7. C
  8. D

Javasolt gyakorlati példa: vezérlők, amelyeket Tárolók segítségével szerveztek hierarchikus struktúrába.

A rendszer automatikusan csoportosítja az összes vezérlőt egy Űrlapkártyába és Katalógusba, így nem kell Tárolót használnia. Azonban alcsoportok esetén továbbra is érdemes Tárolókat használni hozzájuk.

Ebben a példában egy Katalógus sorhoz tartozik egy miniatűr, és a bal oldalon két szöveg. A jobb oldalon két gomb látható. Vizuálisan és logikailag a két vezérlőcsoportnak csoportosítva kell lennie. Ez biztosítja, hogy a képernyőolvasó felhasználók először a bal oldali csoporttal találkoznak a jobb oldali előtt.

Javasolt gyakorlati példa: kapcsolódó vezérlők egy katalógusban, amelyeket Tárolók segítségével csoportosítottak.

A billentyűzet logikai navigációs sorrendje

A billentyűzettel történő navigálás az alkalmazások egyik fontos aspektusa. Sokak számára a billentyűzet hatékonyabb, mint az érintés vagy az egér használata. A navigációs sorrendnek:

  • Kövesse a vezérlők vizuális folyamatát.
  • Egy intuitív oldalsó, majd lefelé irányú "Z" sorrendet vagy egy lefelé, majd oldalsó "fordított-N" sorrendet kell követnie.
  • Csak az interaktív vezérlőkre ugorhat a tabulátorral.

Az AcceptsFocus megadja, hogy a vezérlők elérhetők-e billentyűzettel. Klasszikus vezérlők esetén az egyenértékű tulajdonság a TabIndex.

A navigációs sorrend a vezérlési sorrendet követi: balról jobbra, majd fentről lefelé, "Z" mintával. Ugyanúgy testreszabhatja, mint a vezérlési sorrendben. Például a Tárolók , az Űrlap Kártyák és a Gyűjtemények vezérlői automatikusan csoportosítva vannak. A Tab billentyű végignavigál a tárolón belüli összes elemen, mielőtt továbblép a tárolón kívüli következő vezérlőre.

Ha a navigációs sorrend eltér a várttól, először ellenőrizze, hogy az alkalmazás felépítése logikus-e.

Megjegyzés

Ha a vezérlőket dinamikusan mozgatja a képernyőn, például úgy, hogy X vagy Y értéke egy Power Fx kifejezésnek megfelelően változik, a navigációs sorrend nem frissül.

Egyéni lapsorozat megoldása

Ritkán előfordulhat, hogy a billentyűzet navigációs sorrendje eltér a vizuális sorrendtől, ekkor óvatosan úgy pozicionálhatja a tárolóvezérlőket, hogy ugyanazt a hatást érjék el.

Az alábbi példában az A gomb a B felett található. A természetes lapnavigációs sorrend A, majd B.

Két, függőlegesen egymásra helyezett gomb, ugyanazzal a TabIndexnek értékkel.

Ha meg szeretné fordítani a lapnavigációs sorrendjét, helyezze a B-t gombra egy Tároló vezérlőbe. Állítsa be úgy a Tároló Y-értékét, hogy az A felett legyen. Az alkalmazás struktúrájában innentől a Tároló (és B) az A előtt lesz. Tehát a lapnavigációs sorrend B, majd A.

A B egy olyan tárolóban lesz, amely az A előtt van.

Ezzel a technikával a képernyőolvasó felhasználók is az A előtt fogják látni a B-t, amikor a Tab billentyű nélkül navigálnak.

Egyéni lapindexek (kivezetett funkció)

Az egyéni lapindexek azok, amelyek nagyobbak nullánál. Ezek már nem támogatottak. A nullánál nagyobb TabIndex értékeket a rendszer nullaként kezeli.

Az egyéni lapindexek szinte mindig a rossz tervezés jelei. Vannak jobb megoldások is, mint például az alkalmazás megfelelő strukturálása, vagy a SetFocus használata a fókusz váltása érdekében.

Néhány probléma az egyéni lapindexekkel:

Kisegítő lehetőségek

Ha egyéni lapindexekkel rendelkezik, az komoly kisegítő lehetőségeket jelent. A képernyőolvasó lehetővé teszi, hogy a felhasználók a logikai struktúrával navigálják az alkalmazást. Az egyéni lapindexek figyelmen kívül hagyják ezt a struktúrát. Mivel a képernyőolvasó felhasználók is a Tab billentyűvel navigálnak, nem fogják érteni, ha az egyéb navigációs módszerektől eltérő sorrendet kapnak.

Használhatóság

A felhasználók értetlenül fognak a helyzet előtt állni, ha bizonyos elemek úgy tűnnek, hogy ki lettek hagyva. Lehet, hogy nem fogják tudni, hogy hol vannak, ha kiszámíthatatlan sorrendben halad a fókusz. Ez még nagyobb problémát jelent a szellemileg csökkent képességű felhasználók számára.

Karbantartás

Az alkalmazáskészítőknek manuálisan kell frissíteniük több vezérlő TabIndex értékét, amikor egy újat illesztenek be. Könnyen figyelmen kívül maradhat egy frissítés, vagy eltéveszthetjük a sorrendet.

Teljesítmény

Az egyéni lapindexek támogatásához a Power Apps rendszernek meg kell vizsgálnia az oldalon található összes vezérlőt, és ki kell számítania a megfelelő sorrendet. Ez a számítás időigényes folyamat. Az olyan tárolóvezérlők, mint a Gyűjtemény, bonyolult szabályokkal rendelkezik arról, hogy hogyan kell működnie a TabIndex lehetőséhnek a gyermekvezérlőknél. A rendszer leképezi az alkalmazáskészítő kívánt TabIndex értékét egy másik értékre, hogy megfeleljen ezeknek a szabályoknak. Ezért van, hogy ha a TabIndex minden vezérlő esetén nullára van állítva, a tényleges HTML tabindex pedig pozitív szám lesz.

Integráció más összetevőkkel

Az egyéni lapindexek csak a beépített vezérlőkkel működnek. A Power Apps laprindex rendszerbe nem integrált vezérlők nem várt navigációs sorrendet fognak tartalmazni. Ez problémát jelenthet a kódösszetevők számára. Ezen összetevők fejlesztőinek nyomon kell követniük az interaktív elemeket, és be kell rajtuk állítani a lapindexet. Külső gyártótól származó tárakat is használhatnak, ami lehet, hogy még a lapindexek testreszabására sem nyújt lehetőséget. Másrészt, ha minden lapindex 0 vagy -1, akkor nincs szükség a Power Apps lapindex rendszerre. Az alkalmazásba ágyazott külső gyártótól származó összetevők automatikusan a megfelelő lapsorozatot kapják meg.

Másképp, ha egy másik weboldalba ágyaznak be vászonalapú alkalmazásokat, akkor az egyéni lapindexek nem működnek. Például egyéni oldalakon. A Power Apps nem tudja vezérelni a vászonalapú alkalmazáson kívüli elemeket, így a teljes lapnavigációs sorrend logikátlan lesz.

További lépések

Akadálymentes színek Power Apps-szolgáltatásban

Kapcsolódó információk