PenInputPanelMovingEventHandler (Delegado)
Actualización: noviembre 2007
Representa el método que controla el evento PanelMoving de un objeto PenInputPanel.
Espacio de nombres: Microsoft.Ink
Ensamblado: Microsoft.Ink (en Microsoft.Ink.dll)
Sintaxis
'Declaración
Public Delegate Sub PenInputPanelMovingEventHandler ( _
sender As Object, _
e As PenInputPanelMovingEventArgs _
)
'Uso
Dim instance As New PenInputPanelMovingEventHandler(AddressOf HandlerMethod)
public delegate void PenInputPanelMovingEventHandler(
Object sender,
PenInputPanelMovingEventArgs e
)
public delegate void PenInputPanelMovingEventHandler(
Object^ sender,
PenInputPanelMovingEventArgs^ e
)
/** @delegate */
public delegate void PenInputPanelMovingEventHandler(
Object sender,
PenInputPanelMovingEventArgs e
)
JScript no admite delegados.
Parámetros
- sender
Tipo: System.Object
Objeto PenInputPanel de origen de este evento.
- e
Tipo: Microsoft.Ink.PenInputPanelMovingEventArgs
Objeto PenInputPanelMovingEventArgs que contiene los datos del evento.
Comentarios
Utilice el evento PanelMoving para cambiar la posición del panel de entrada manuscrita cambiando parámetros Top y Left.
Advertencia
Los métodos Refresh y MoveTo hacen que el objeto PenInputPanel llame a su código posicionamiento automático, que activa un evento PanelMoving. Por tanto, si se llama a estos métodos dentro de un delegado de PenInputPanelMovingEventHandler se puede producir un bucle sin fin.
Ejemplos
En este ejemplo de C#, se crea un objeto PenInputPanel, thePenInputPanel, y se asocia a un control InkEdit, theInkEdit. A continuación, se agrega un controlador de eventos PanelMoving y un controlador de eventos VisibleChanged a thePenInputPanel. En el controlador VisibleChanged, la posición del panel de entrada manuscrita cambia, lo que hace que se desencadene el evento PanelMoving. Posteriormente, el controlador PanelMoving establece el texto del control InkEdit asociado en una oración que contiene las nuevas coordenadas de pantalla del panel de entrada manuscrita.
[C#]
//...
// Delcare the PenInputPanel object
PenInputPanel thePenInputPanel;
public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
// Create and attach the new PenInputPanel to an InkEdit control.
thePenInputPanel = new PenInputPanel(theInkEdit);
// Add a PanelMoving event handler
thePenInputPanel.PanelMoving +=
new PenInputPanelMovingEventHandler(PanelMoving_Event);
// Add a VisibleChanged event handler
thePenInputPanel.VisibleChanged +=
new PenInputPanelVisibleChangedEventHandler(VisibleChanged_Event);
}
//...
public void PanelMoving_Event(object sender,
PenInputPanelMovingEventArgs e)
{
// Make sure the object that generated
// the event is a PenInputPanel object
if (sender is PenInputPanel)
{
PenInputPanel theSenderPanel = (PenInputPanel)sender;
theSenderPanel.AttachedEditControl.Text = "The panel has moved to ";
theSenderPanel.AttachedEditControl.Text += e.Left.ToString();
theSenderPanel.AttachedEditControl.Text += ", ";
theSenderPanel.AttachedEditControl.Text += e.Top.ToString();
}
}
public void VisibleChanged_Event(object sender,
PenInputPanelVisibleChangedEventArgs e)
{
// Make sure the object that generated
// the event is a PenInputPanel object
if (sender is PenInputPanel)
{
PenInputPanel theSenderPanel = (PenInputPanel)sender;
// If the panel has become visible...
if (e.NewVisibility)
{
// Move the pen input panel to screen position 100, 100
theSenderPanel.MoveTo(100, 100);
}
}
}
En este ejemplo de Microsoft® Visual Basic® .NET se crea un objeto PenInputPanel, thePenInputPanel, y se asocia a un control InkEdit, theInkEdit. A continuación, se agrega un controlador de eventos PanelMoving y un controlador de eventos VisibleChanged a thePenInputPanel. En el controlador VisibleChanged, la posición del panel de entrada manuscrita cambia, lo que hace que se desencadene el evento PanelMoving. Posteriormente, el controlador PanelMoving establece el texto del control InkEdit asociado en una oración que contiene las nuevas coordenadas de pantalla del panel de entrada manuscrita.
[Visual Basic]
'...
' Declare the PenInputPanel object
Dim thePenInputPanel As PenInputPanel
Public Sub New()
MyBase.New()
' Required for Windows Form Designer support
InitializeComponent();
' Create and attach the new PenInputPanel to an InkEdit control.
thePenInputPanel = New PenInputPanel(theInkEdit)
' Add a PanelMoving event handler
AddHandler thePenInputPanel.PanelMoving, _
AddressOf PanelMoving_Event
' Add a VisibleChanged event handler
AddHandler thePenInputPanel.VisibleChanged, _
AddressOf VisibleChanged_Event
End Sub 'New
'...
Public Sub PanelMoving_Event(sender As Object, e As _
PenInputPanelMovingEventArgs)
' Make sure the object that generated
' the event is a PenInputPanel object
If TypeOf sender Is PenInputPanel Then
Dim theSenderPanel As PenInputPanel = CType(sender, PenInputPanel)
theSenderPanel.AttachedEditControl.Text = "The panel has moved to "
theSenderPanel.AttachedEditControl.Text += e.Left.ToString
theSenderPanel.AttachedEditControl.Text += ", "
theSenderPanel.AttachedEditControl.Text += e.Top.ToString
End If
End Sub 'PanelMoving_Event
Public Sub VisibleChanged_Event(sender As Object, e As _
PenInputPanelVisibleChangedEventArgs)
' Make sure the object that generated
' the event is a PenInputPanel object
If TypeOf sender Is PenInputPanel Then
Dim theSenderPanel As PenInputPanel = CType(sender, PenInputPanel)
' If the panel has become visible...
If e.NewVisibility Then
' Move the pen input panel to screen position 100, 100
theSenderPanel.MoveTo(100, 100)
End If
End If
End Sub 'VisibleChanged_Event
Plataformas
Windows Vista
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Información de versión
.NET Framework
Compatible con: 3.0