it-swarm.asia

Cara terbaik untuk menerima input pengguna dari beberapa nomor?

Saya sedang membangun aplikasi WPF (sangat) kecil yang perlu menerima input pengguna dalam bentuk serangkaian angka.

Pengguna akan memasukkan di mana saja dari 1-30 angka (semua angka 6 digit) dan kemudian mengklik tombol ketik 'Kirim'. Itulah keseluruhan aplikasi, tidak lebih.

Saya ingin menjadikan ini sebagai 'gesekan rendah' ​​mungkin, menjaga jumlah total pukulan tombol dan klik tombol yang harus dilakukan pengguna seminimal mungkin. Dan pada saat yang sama, menjaganya seintuitif mungkin.

Apa cara terbaik untuk menerima input semacam ini?

Satu-satunya hal yang dapat saya pikirkan adalah kotak teks dan pengguna cukup mengetikkan angka-angka mereka dalam bentuk yang dipisahkan koma, tetapi saya ingin mendengar jika ada yang memiliki solusi yang lebih baik.

10
Dhaust

Saya akan menyarankan kotak teks yang menambahkan item ke kotak daftar. Pengguna kemudian harus dapat menambah, mengedit, dan menghapus dari kotak daftar.

Dalam pengalaman saya, sementara satu set angka terbatas mungkin mudah untuk menyalin/menempel dari satu aplikasi ke aplikasi lainnya, tidak mudah untuk mengetik secara manual, terutama hingga 30 item. Sebaliknya, jika pengguna Anda terbiasa memasukkan string yang dibatasi lama, biarkan kotak teks menerima item yang dibatasi, kemudian secara otomatis membagi data dan menambahkan setiap item ke kotak daftar. Ini akan memungkinkan pengguna berpengalaman untuk menambahkan banyak item, sementara juga menyederhanakan koreksi dengan memperlakukan daftar sebagai entitas individual.

12
Nescio

Untuk menjaga penekanan tombol ke minimum memiliki kotak teks di mana Anda memasukkan angka, setiap kali Anda mengetik 6 digit menyalin nomor ke daftar dan menghapus kotak teks, kontrol dibatasi koma tunggal tidak mungkin untuk memindai dan menemukan kesalahan.

Tapi, ingat sangat tidak mungkin untuk mengetik begitu banyak angka tanpa kesalahan jadi:

  • Pastikan Anda mudah mengedit angka yang sudah Anda masukkan

  • Jika ada cara untuk memvalidasi nomor, tandai dengan benar, nomor itu valid/tidak valid sesegera mungkin.

  • Cobalah untuk membuat UI menyerupai apa pun yang mereka salin dari angka jika memungkinkan.

  • Tampilkan angka terakhir dalam daftar dengan font tetap lebar (yang membuat jika lebih mudah untuk melihat hal-hal seperti 15 angka terakhir semua memiliki 2 di posisi ke-3 kecuali yang itu, saya pasti salah ketik)

  • Tes, Tes, Tes - mudah dalam kasus Anda, cukup ukur waktu untuk memasukkan semua angka dan jumlah kesalahan - buat beberapa desain dan lihat apa yang paling berhasil, perbaiki dengan perbaikan berdasarkan apa yang diperjuangkan pengguna.

7
Nir

Cobalah untuk membangun saran dari Nescio dan membuatnya sangat efisien.

Pertimbangkan memiliki kotak teks dan kotak daftar:

[12____]

 111111
 222222
 333333
*12____*
  • Ketika kursor melewati digit terakhir di kotak teks dan pengguna mengetik digit lain: tambahkan entri ke bagian bawah kotak daftar, kosongkan kotak teks dan tambahkan angka itu sebagai yang pertama.
    • Misalnya, jika 123456 dimasukkan dan tipe pengguna 7, entri harus ditambahkan ke daftar dan mereka harus mendapatkan 7_____ di kotak teks.
    • Jika mereka mengetikkan Enter, Tab, koma dll. Tambahkan entri dan kosongkan kotak teks.
    • Pengguna hanya perlu memasukkan angka, meminimalkan penekanan tombol. Namun, mereka masih dapat menggunakan penekanan tombol ekstra jika mereka terbiasa melakukannya.
  • Mencerminkan perubahan dalam item listbox saat ini sebagai tipe pengguna. Miliki placeholder daftar khusus untuk item kosong/baru (mis. Baris terakhir yang menunjukkan [ new ]).
  • Jika pengguna memilih item di kotak daftar, isi kotak teks. Biarkan mereka segera mulai mengetik untuk mengeditnya (alihkan fokus sesuai kebutuhan).
    • Pertimbangkan untuk mendukung tombol panah atas/bawah untuk memilih item kotak daftar. Kunci harus bekerja di mana pun fokus berada dalam aplikasi.
  • UI non-standar membuka banyak detail halus yang menjengkelkan jika tidak ditangani dengan benar. Uji dan coba sampai UI terasa alami. Juga, minta orang lain (rekan kerja) untuk mencobanya.

Mendukung cut & paste jika Anda bisa. Pengguna sering menyesuaikan alur kerja mereka dengan cara yang tidak terduga, cobalah untuk tidak menghalangi mereka.

2
dbkk

Anda bisa melakukan ini dengan dua cara.

  1. Buat 30 bidang input dengan ruang untuk masing-masing 6 digit. Saat pengguna mengetik semua 6 digit, lompat ke yang berikutnya atau gunakan tab untuk melompat ke yang berikutnya.

  2. Buat 1 bidang input dan tambahkan teks yang mengatakan "Gunakan tombol tab untuk menambahkan set data baru" atau sesuatu seperti itu. Dan kemudian tambahkan bidang input lain setiap kali pengguna mendorong bidang tab.

1
ThomPete

Di mana pengguna mendapatkan nomor yang mereka masukkan ke sistem Anda? Bisakah mereka menyalin/menempel

Jika itu mungkin, maka lihat bagaimana fungsi salin/tempel bekerja untuk memasukkan nomor seri di beberapa aplikasi seperti Adobe dan Microsoft. Pengguna dapat menyalin string angka yang panjang dan menempelkannya ke sejumlah bidang dalam satu gerakan.

Kalau tidak, jawaban ThomPete bekerja dengan sangat baik.

0
Tucker