Hola:
Necesito crear un control de usuario con apariencia de dial en Microsoft Visual C# Express Edition, como se ven en una de las imágenes que adjunto. La verdad es que hasta hace unos días no tenía ni idea de C#, (y ahora no tengo mucha más), pero en una materia de tiempo real que estoy estudiando, nos exigen tener unas nociones de programación en este lenguaje.
El problema consiste en realizar un programa, que consta de 3 trackbar, cada una de las cuales maneja a la vez dos controles que son creados por el usuario: el depósito y el dial. El depósito nos lo dan hecho como ejemplo, y más o menos lo entendí..... pone un panel y un label, y luego maneja las propiedades etc. Pero es que para el dial..... uffffffffffff no consigo empezar; es que no cosigo ni dibujar los arcos ni el triangulito; creo que se hace con "DrawArc", pero he probado muchos códigos, y aunque no me dan errores ni nada, no me sale absolutamente nada, he puesto un panel y el último código que estoy probando es este:
seguramente hay cosas sin sentido, pero lo mío es como un método de prueba y error, porque no me entero mucho de como va esto..... Me he comprado un libro de C#, pero no trae mucho acerca de construir aplicaciones Windows Forms; va mas bien orientado a otros aspectos; me lo estoy leyendo, para coger las nociones del lenguaje, pero ..... no creo que me de tiempo de conseguir resolver esto.
Si alguien pudiese ayudarme a dibujar el dial, es decir del semiarco de colores y el puntero-triangulo, se lo agradecería muchisimo, porque a partir de ahí, podría seguir avanzando en el control, guiándome por el otro ejemplo del depósito; pero sin eso, no soy capaz de hacer nada.....
Muchas gracias de antemano.
Antía.
Necesito crear un control de usuario con apariencia de dial en Microsoft Visual C# Express Edition, como se ven en una de las imágenes que adjunto. La verdad es que hasta hace unos días no tenía ni idea de C#, (y ahora no tengo mucha más), pero en una materia de tiempo real que estoy estudiando, nos exigen tener unas nociones de programación en este lenguaje.
El problema consiste en realizar un programa, que consta de 3 trackbar, cada una de las cuales maneja a la vez dos controles que son creados por el usuario: el depósito y el dial. El depósito nos lo dan hecho como ejemplo, y más o menos lo entendí..... pone un panel y un label, y luego maneja las propiedades etc. Pero es que para el dial..... uffffffffffff no consigo empezar; es que no cosigo ni dibujar los arcos ni el triangulito; creo que se hace con "DrawArc", pero he probado muchos códigos, y aunque no me dan errores ni nada, no me sale absolutamente nada, he puesto un panel y el último código que estoy probando es este:
PHP:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace AISA
{
public partial class Dial : UserControl
{
public Dial()
{
InitializeComponent();
}
private void Dial_Paint(object sender, PaintEventArgs e)
{
etiqueta.Text = String.Format("{0:N2}", Posicion);
int anchoTexto = (int)e.Graphics.MeasureString(etiqueta.Text, etiqueta.Font).Width;
etiqueta.Left = (Width - anchoTexto) / 2;
dibujaDial();
}
private void panel_Paint(object sender, PaintEventArgs e)
{
dibujaDial( );
}
private void dibujaDial()
{
Pen blackPen = new Pen(Color.Black, 3);
Rectangle rect = new Rectangle(0, 0, 100, 200);
float startAngle = 45.0F;
float sweepAngle = 270.0F;
Graphics g ;
g.DrawArc(Pen,rect,startAngle,sweepAngle) ;
}
}
}
}
seguramente hay cosas sin sentido, pero lo mío es como un método de prueba y error, porque no me entero mucho de como va esto..... Me he comprado un libro de C#, pero no trae mucho acerca de construir aplicaciones Windows Forms; va mas bien orientado a otros aspectos; me lo estoy leyendo, para coger las nociones del lenguaje, pero ..... no creo que me de tiempo de conseguir resolver esto.
Si alguien pudiese ayudarme a dibujar el dial, es decir del semiarco de colores y el puntero-triangulo, se lo agradecería muchisimo, porque a partir de ahí, podría seguir avanzando en el control, guiándome por el otro ejemplo del depósito; pero sin eso, no soy capaz de hacer nada.....
Muchas gracias de antemano.
Antía.
Adjuntos
Última edición por un moderador: