2010-04-05 15 views
5

Tengo una columna de tabla donde cada fila tiene uno de tres estados, y el propósito de la fila es ofrecer manipulación Y visualización de esta propiedad con tres estados.modismos para un alternar de tres estados?

Mi vista de desarrollo actual consiste en tener tres botones de radio ajustados con etiquetas en la cabecera de las columnas (y cada 50 filas más o menos) y al hacer clic en ellos se envía una solicitud de AJAX y ella suena.

Esto es fugly.

¿Hay un idioma estándar para un control como este? Actualmente me estoy burlando de algo similar a la palanca de encendido/apagado del iPhone, pero con un estado "medio".

Cualquier entrada sería bienvenida.

EDITAR

Un poco más aclaraciones: Tengo una herramienta para la confirmación de eventos. Cada evento es "propuesto", "cancelado" o "confirmado". Todos predeterminan a "propuesto" hasta que alguien los confirma o cancela explícitamente. Este es un front-end delgado para una tabla SQL.

+0

Si pudiera publicar una captura de pantalla de lo que ya ha hecho, sería realmente útil. –

+0

O solo una descripción del problema real, o al menos la propiedad que intentas representar. "Una buena IU" tiende a depender de la situación en la que se usa. –

Respuesta

5

He visto esto manejado con botones de imagen que permanecen "deprimidos" cuando hace clic mientras saca los otros dos. Actúan como botones de opción, excepto que la etiqueta y el estado se fusionan. Si sus nombres son demasiado largos para caber en un botón, puede abreviarlos y proporcionar una clave. También les daría a cada uno un color distinto. Para la implementación simplemente muestre el valor en un campo de formulario oculto al hacer clic.

Son los llamados "botones de conmutación" de alguna otra interfaz de usuario:

+0

Esto funciona bien con mi situación, gracias por la sugerencia. Es básicamente como un walkman. ¿Recuerdas ésos? –

+1

O como la configuración de temperatura en mi 96 Civic. :-) – roufamatic

0

Como alternativa a sus botones de opción, podría considerar una lista desplegable con tres opciones. La desventaja es, por supuesto, que se necesitan dos clics para cambiar el valor.

+0

Se editarán "a granel", tal vez 20-30 a la vez, por lo que su consideración de clics es válida –

0

¿Quizás use un control deslizante con tres estados? (Realmente depende de la situación exacta!)

1

Quizás visualización de las flechas a cada lado para cambiar el estado:

(Cancelled) <| Proposed |> (Confirmed) 

Estos pueden o no pueden 'envolver' dependiendo de lo bien que se adapte a los valores y cómo importante es guardar un clic al pasar del valor 1 al valor 3 (o viceversa).

2

La mecanización estándar para cosas como esta en la aviónica militar, donde el espacio de la pantalla siempre es un bien escaso, al igual que los botones, es un "rotativo". Cada vez que hace clic en él, pasa al siguiente valor en secuencia, envolviendo.

Como ejemplo, un dispositivo con un refrigerador criogénico podría tener tres estados: APAGADO, CALIENTE y FRÍO. Inicialmente, el dispositivo está APAGADO: no se aplica energía. Haga clic en él y cambia a WARM, lo que significa que se aplica energía, pero no se enfría. Haga clic de nuevo, y se inicia el refrigerador. (Debido a que el enfriamiento en este tipo de cosas suele ser suministrado por una botella de gas con una capacidad estrictamente limitada, no desea enfriar el dispositivo hasta que esté listo para la fiesta.) Haga clic de nuevo y apaga el dispositivo.

0

Me recuerda el botón permisos en SQL - que tiene múltiples estados; verificación verde, rojo x, sin configuración, y al hacer clic en ellos, recorre los tres estados. Está bien, pero es molesto si quieres cambiar un grupo al estado alcanzado en segundo lugar, y si haces clic demasiadas veces tienes que pasar por todo de nuevo. Clic izquierdo - ciclo adelante; clic derecho - ciclo hacia atrás podría funcionar, pero ciertamente no tiene ninguna base en las expectativas de UI.

Idiomáticamente, yo diría que un Stop Light (rojo/amarillo/verde). Podrían comportarse como botones de radio; tonos más oscuros para 'apagado' y tonos más claros para 'encendido', y dado que el color da una señal, puede mover la descripción a una etiqueta de mouseover. Por supuesto, no es RG Colorblind kosher, por lo que dependiendo de su aplicación puede ser un factor decisivo.(también puede ser confuso para Mac, donde los botones de minimizar/cerrar etc. tienen el mismo esquema de color).

2

También puede hacerlo con botones o hipervínculos. En una gran mesa, los hipervínculos probablemente se vean mejor.

En el estado propuesto, su celular podría ser algo como esto (con enlaces subrayados, pero el editor no me lo permite):

propuestosConfirmCancel

En el Estado confirmado:

ConfirmadoUndo

En el estado Cancelado:

CanceladoUndo

Esto tendrá dos clics para llegar desde confirmada a la inversa cancelado y, pero supongo que esta operación es más raro que cambiar entre Propuesto y uno de los otros dos.

+0

+1 - o combine esto con el enfoque de "botones de alternar" (siempre muestra los tres estados, con los dos estados no seleccionados en los que se puede hacer clic) –

0

por qué no utilizar tres cajas que se parecen a las "Preguntas", "Etiquetas", "Usuarios", ... cuadros en esta página (¿podrían implementarse como enlaces, botones o lo que sea)?

Cuestiones relacionadas