cómo mover una etiqueta en un winform en tiempo de ejecución

utilizando en este caso la etiqueta desaparece, cómo calzados puedo hacer esto?

    private void label4_MouseMove(object sender, MouseEventArgs e)
    {
        label4.Location = new Point(Cursor.Position.X, Cursor.Position.Y);
    }
InformationsquelleAutor Darkmage | 2009-11-26

4 Kommentare

  1. 3

    La ubicación de label4 es relativa al contenedor (Form o el control de los padres), la posición del Cursor puede ser en relación a la pantalla.

    Usted necesita para ajustar la ubicación. Por ejemplo, si el contenedor es el Form usted puede encontrar su ubicación en la pantalla y calcular la ubicación del cursor en relación a la pantalla.

    Esta es sólo una posibilidad para la causa, pero este se pasa un montón 🙂

    • ah que es un problema
    • tengo configurado y funcionando basado en esta información.
  2. 5
    handle these three event ...
    Control actcontrol;
     Point   preloc;
     void label1_Mousedown(object sender, MouseEventArgs e)
            {
    
                actcontrol = sender as Control;
                preloc = e.Location;
                Cursor = Cursors.Default;
    
    
            }
            void label1_MouseMove(object sender, MouseEventArgs e)
            {
                if (actcontrol == null || actcontrol != sender)
                    return;
                var location = actcontrol.Location;
                location.Offset(e.Location.X - preloc.X, e.Location.Y - preloc.Y);            
                actcontrol.Location = location;
    
            }
            void label1_MouseUp(object sender, MouseEventArgs e)
            {
                actcontrol = null;
                Cursor = Cursors.Default;
    
            }
  3. 3

    Utilice el formulario PointToClient() función para traducir el ratón coordenadas X/Y en los puntos que están en relación a su forma, que debe hacerlo.

    Editar: Usar el evento de ratón args propiedades de los objetos en su lugar:

    Label1.Location = New Point(e.X, e.Y)

    PS perdón por el VB, C#, en este PC

  4. 1

    La ubicación de un elemento en relación con su progenitor. En este caso, a pesar de que está utilizando el absoluto de la posición del ratón como su ubicación.

    Tendrás que traducir la posición del ratón en el sistema de coordenadas del elemento padre.

    Utilizar el PointToClient método en la etiqueta del elemento padre.

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea