it-swarm-eu.dev

Nejlepší způsob, jak akceptovat uživatelské zadání více čísel?

Vytvářím (velmi) malou aplikaci WPF, která musí akceptovat vstup uživatele ve formě řady čísel.

Uživatel bude zadávat kdekoli od 1-30 čísel (všech 6 číslic) a poté klikne na tlačítko „Odeslat“. To je celá aplikace, nic víc.

Chci to udělat co možná „s nízkým třením“ a udržet tak celkový počet stisků tlačítek a kliknutí na tlačítko, které musí uživatel udělat na minimu. A zároveň jej udržujte co nejintuitivnější.

Jaký je nejlepší způsob, jak přijmout tento druh vstupu?

Jediné, na co si vzpomenu, je textové pole a uživatel jednoduše zadá jejich čísla ve formě oddělené čárkami, ale rád bych slyšel, jestli má někdo lepší řešení.

10
Dhaust

Navrhl bych textové pole, které přidá položky do seznamu. Uživatel by pak měl být schopen přidat, upravit a odebrat ze seznamu.

Podle mých zkušeností, zatímco ohraničený soubor čísel může být snadno zkopírovat/vložit z jedné aplikace do druhé, není snadné ručně psát, zejména pro až 30 položek. Naopak, pokud jsou vaši uživatelé zvyklí na zadávání dlouhých oddělovaných řetězců, nechte textové pole přijímat oddělené položky, pak data automaticky rozdělte a každou položku přidejte do seznamu. To umožní zkušeným uživatelům přidat více položek a zároveň zjednodušit opravy tím, že se seznam bude zacházet jako s jednotlivými entitami.

12
Nescio

Aby klávesové zkratky byly co nejmenší, mělo by se v textovém poli zadat číslo. Pokaždé, když zadáte 6 číslic, zkopírujte číslo do seznamu a zrušte textové pole, je nemožné skenovat jediný ovládací prvek oddělený čárkami a najít chyby.

Ale pamatujte, že je opravdu nemožné napsat tolik čísel bez chyb, takže:

  • Ujistěte se, že je snadné upravit čísla, která jste již zadali

  • Pokud existuje způsob, jak ověřit číslo, je správné nahlásit číslo co nejdříve platné nebo neplatné.

  • Pokuste se, aby se uživatelské rozhraní podobalo cokoli, z kterého kopírují čísla, pokud je to možné.

  • Zobrazit minulá čísla v seznamu v písmu s pevnou šířkou (což usnadňuje vidění věcí, jako je 15 minulých čísel, všechny mají na 3. pozici 2 kromě toho, které musím napsat)

  • Test, Test, Test - ve vašem případě je to snadné, změřte čas na zadání všech čísel a počtu chyb - vytvořte několik návrhů a podívejte se, co funguje nejlépe, vylepšete to pomocí oprav na základě toho, s čím se uživatelé potýkají.

7
Nir

Zkuste stavět na návrhu @ Nescio a zefektivnit jej.

Zvažte použití textového pole a seznamu:

[12____]

 111111
 222222
 333333
*12____*
  • Když je kurzor za poslední číslicí v textovém poli a uživatel zadá další číslici: přidejte položku na konec seznamu, zrušte textové pole a přidejte tuto číslici jako první.
    • Například, pokud 123456 je zadáno a typy uživatelů 7, položka by měla být přidána do seznamu a měla by dostat 7_____ do textového pole.
    • Pokud napíšou Enter, Tab, čárka atd., Přidejte položku a zrušte textové pole.
    • Uživatel pouze musí zadat číslice a minimalizovat stisknutí kláves. Pokud však na to jsou zvyklí, mohou stále používat zvláštní vymezení kláves.
  • Změny v aktuální položce seznamu se projeví jako typy uživatelů. Mají zvláštní zástupný symbol seznamu pro prázdné/nové položky (např. Poslední řádek zobrazující [ new ]).
  • Pokud uživatel vybere položku v seznamu, vyplňte textové pole. Nechte je okamžitě začít psát a upravovat (podle potřeby posunout fokus).
    • Při výběru položek seznamů zvažte podporu kláves se šipkami nahoru/dolů. Klávesy by neměly fungovat bez ohledu na to, kde je v aplikaci soustředěno.
  • Nestandardní uživatelská rozhraní otevírají mnoho jemných detailů, které jsou nepříjemné, pokud nejsou správně zpracovány. Testujte a experimentujte, dokud se uživatelské rozhraní necítí přirozeně. Požádejte také jinou osobu (spolupracovníka), aby to vyzkoušela.

Podporujte vyjmutí a vložení, pokud můžete. Uživatelé často upravují svůj pracovní postup nepředvídanými způsoby, snažte se jim nebránit.

2
dbkk

Mohli byste to udělat dvěma způsoby.

  1. Vytvořte 30 vstupních polí s prostorem pro 6 číslic. Když uživatel zadal všech 6 číslic, přejděte na další nebo pomocí karty přejděte na další.

  2. Vytvořte 1 vstupní pole a přidejte text s názvem „Pomocí nové klávesy přidejte novou sadu dat“ nebo něco podobného. A pak přidejte další vstupní pole pokaždé, když uživatel stiskne pole tab.

1
ThomPete

Kde uživatel získá čísla, která zadávají do vašeho systému? Mohou kopírovat/vložit

Pokud je to možné, podívejte se, jak funguje funkce kopírování/vkládání pro zadávání sériových čísel v některých aplikacích, jako jsou Adobe a Microsoft. Uživatel může zkopírovat dlouhý řetězec čísel a vložit do několika polí v jednom padajícím tahu.

Jinak odpověď ThomPete funguje docela dobře.

0
Tucker