C sharp - Wait window en C#

 
Vista:
sin imagen de perfil
Val: 8
Ha aumentado su posición en 17 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

Wait window en C#

Publicado por lucas (5 intervenciones) el 01/05/2018 01:21:01
Hola chicos:
Les comento, quiero recrear en c# la funcion "Wait Window" de FoxPro.
Pero no consigo ajustar el ancho del formulario al texto.
por ejemplo:
tengo un formulario llamado frmWW.
dentro del mismo tengo un Label llamado mensaje.

deseo que cuando inicie se ajuste el ancho del formulario al ancho del texto.

entiendo que deberia ser algo asi aprox:
int margenes=5;

frmWW.width = margenes + mensaje.width + margenes;
pero no esta todo en las mismas unidades creo.
no se si hay que pasar todo a pixeles o algo asi, pero no me sale.
Si alguien me puede ayudar, muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 373
Plata
Ha aumentado su posición en 2 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

Wait window en C#

Publicado por Agustin (171 intervenciones) el 01/05/2018 03:57:37
1 - olvidate de fox pro, que hace 20 años ya era un dinosaurio.
2 - olvidate de winforms, que hace 10 años ya era un dinosaurio.

Aprendé WPF/XAML si te interesa crear aplicaciones de Windows Resolution-independent, que se auto ajusten al contenido o al tamaño de la pantalla del usuario.

Caso contrario te conviene pasarte a Web, y usar Angular o React para el frontend, y ASP.NET Web API para el backend.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 8
Ha aumentado su posición en 17 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

Wait window en C#

Publicado por lucas (5 intervenciones) el 05/05/2018 01:34:53
muchas gracias por tu aporte, pero pregunto esto porque necesito hacer eso específicamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Francisco Antonio
Val: 19
Ha disminuido 1 puesto en C sharp (en relación al último mes)
Gráfica de C sharp

Wait window en C#

Publicado por Francisco Antonio (2 intervenciones) el 06/05/2018 21:32:46
Prová con esto:

Question
Inicie sesión para votar
0
Inicie sesión para votar

Hola:

Si el control Label tiene su propiedad Autosize establecida en True, que dicho sea de paso es su valor predeterminado, centrarías el control HORIZONTALMENTE en el evento Paint del formulario:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private void Form1_Paint(object sender, PaintEventArgs e)
{
    // Área cliente del formulario.
    //
    Rectangle r = this.ClientRectangle;
 
    // Punto intermedio del área cliente.
    //
    int c = r.Width / 2;
 
    // Establecemos la nueva posición del control Label.
    //
    label1.Location = new Point(c - label1.Width/2, label1.Location.Y);
 
}

Pero para que se desencadene el evento Paint cuando cambie la propiedad Text del control Label, tienes que invalidar el formulario:

1
2
3
4
5
// cambiamos el texto del control Label
label1.Text += label1.Text;
 
// invalidamos el formulario
Invalidate();

Asimismo, también tienes que invalidar el formulario cuando se redimensione el formulario:

1
2
3
4
5
private void Form1_Resize(object sender, EventArgs e)
{
    // invalidamos el formulario
    Invalidate();
}

Mira a ver si de ésta manera queda centrado HORIZONTALMENTE el control Label. Digo en HORIZONTAL, porque se supone que tendrá la misma verticalidad original donde aquel se encuentre situado.


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar