Estoy trabajando en una máquina de discos winforms en C#. Me gustaría tener una barra de progreso vertical para el control de volumen. ¿Alguien sabe cómo hacer eso?¿Cómo puedo hacer que una barra de progreso de winforms se mueva verticalmente en C#?
Respuesta
No sé que haría uso de una barra de progreso para el control el volumen, pero a pantalla el nivel de volumen se puede utilizar un control tomada de usuario o usted podría cambiar el tamaño de una etiqueta con un color de fondo (ese último método es algo así como kludgy)
La barra de progreso no está destinada a tomar entrada, sin importar la orientación.
Si realmente desea controlar el volumen, considere usar una barra de desplazamiento vertical, o una barra de seguimiento con a vertical orientation.
Por lo que vale la pena, hay a discussion on how to create a vertical progress bar on MSDN, donde se sugieren hacer esto:
using System;
using System.Windows.Forms;
public class VerticalProgressBar : ProgressBar {
protected override CreateParams CreateParams {
get {
CreateParams cp = base.CreateParams;
cp.Style |= 0x04;
return cp;
}
}
}
el cual establece el indicador PBS_VERTICAL
en Style
.
+1: "Funciona en mi máquina" – Sung
+1 Gracias, esto funciona muy bien. – Krakerjak
Agregue lo siguiente a su clase y el tamaño se establecerá correctamente cuando arrastre el control a su formulario. override protegido System.Drawing.Size DefaultSize { get { return new System.Drawing.Size (23,100); } } –
Tiene que usar el ProgressBarRenderer para eso. Está documentado en MSDN
La documentación muestra realmente la implementación de una ProgressBar vertical, por lo que debería ser más fácil para usted. :-)
+1 Esta solución funcionó, pero la que Daniel dejó se veía mejor. – Krakerjak
No hay problema. Te acabo de decir lo que Microsoft dijo que debes hacer; es su marco, después de todo. es tu decisión si lo haces o no. :-) –
- 1. ¿Cómo puedo hacer que una barra de búsqueda de Android se mueva sin problemas?
- 2. Winforms Barra de progreso no se actualiza (C#)
- 3. ¿Cómo puedo hacer una barra de progreso sin fin en WinForms?
- 4. Haz que un gradiente se mueva interminablemente en una barra de progreso como en Windows 7
- 5. Cómo hacer una barra de progreso
- 6. Cómo hacer que Gmail como barra de progreso de carga
- 7. ¿Cómo hacer una barra de progreso personalizada en Android?
- 8. ¿Cómo puedo hacer que un ListBoxItem se alargue verticalmente
- 9. ¿Cómo hago una barra de progreso de marquesina en WPF?
- 10. ¿Por qué mi barra de progreso no está centrada verticalmente?
- 11. ¿Cómo implemento una barra de progreso en C#?
- 12. ¿Cómo se muestra el progreso cuando Indeterminado = "Verdadero" en una barra de progreso de WPF?
- 13. cómo codificar una barra de progreso
- 14. ¿Cómo puedo agregar una barra de progreso a WWW :: Mechanize?
- 15. ¿Cómo se llama una barra de progreso de bucle?
- 16. Hacer que Java JScrollpane solo se desplace verticalmente
- 17. Actualizar una barra de progreso en mathematica
- 18. barra de progreso circular
- 19. Barra de progreso de Python
- 20. ¿Cómo puedo hacer que un NSView se mueva al frente de todos los NSViews?
- 21. ¿Cómo puedo hacer una barra de progreso (copiar cp un directorio)?
- 22. Agregar una barra de progreso en WebView
- 23. Winforms: ¿cómo puedo hacer que MessageBox aparezca centrado en MainForm?
- 24. ¿Cómo puedo hacer que un sprite se mueva cuando se mantiene presionada la tecla
- 25. WPF: barra de progreso con duración indeterminada?
- 26. wxPython barra de progreso
- 27. Mostrar una barra de progreso cuando se carga una actividad
- 28. Barra de progreso vertical
- 29. ¿Cómo hacer que una imagen se mueva en una ruta circular usando jquery?
- 30. Texto en una barra de progreso en WPF
No utilice una barra de progreso para esto; una barra de seguimiento vertical es el control más apropiado. Las barras de progreso están diseñadas para la salida visual, y abusar de los controles de esta manera conduce a interfaces de usuario incómodas. – Rob
Ese es un buen punto. Vi "barra de progreso vertical" y no miré el resto. Probablemente, una barra de progreso no sea lo que se debe usar para mostrar el nivel de un control de volumen. –