Udostępnij za pośrednictwem


DrawToolTipEventArgs.Graphics Właściwość

Definicja

Pobiera powierzchnię graficzną używaną do rysowania .ToolTip

public:
 property System::Drawing::Graphics ^ Graphics { System::Drawing::Graphics ^ get(); };
public System.Drawing.Graphics Graphics { get; }
member this.Graphics : System.Drawing.Graphics
Public ReadOnly Property Graphics As Graphics

Wartość właściwości

Obiekt Graphics , na którym ma być rysowanie .ToolTip

Przykłady

Poniższy przykład kodu przedstawia sposób niestandardowego rysowania elementu ToolTip. W przykładzie tworzony jest obiekt ToolTip i kojarzy go z trzema Button kontrolkami znajdującymi się w obiekcie Form. W przykładzie OwnerDraw właściwość jest ustawiana na wartość true i obsługuje Draw zdarzenie. W procedurze obsługi zdarzeń Draw obiekt jest rysowany w inny sposób w zależności od tego, ToolTip dla którego przycisku ToolTip jest wyświetlany, zgodnie z właściwością DrawToolTipEventArgs.AssociatedControl .

Poniższy fragment kodu przedstawia użycie DrawText metod i DrawBackground oraz użycie Graphics właściwości . Zobacz omówienie klasy, DrawToolTipEventArgs aby zapoznać się z kompletnym przykładem kodu.

// Draw a custom 3D border if the ToolTip is for button1.
if ( e->AssociatedControl == button1 )
{
   // Draw the standard background.
   e->DrawBackground();
   
   // Draw the custom border to appear 3-dimensional.
   array<Point>^ temp1 = {Point(0,e->Bounds.Height - 1),Point(0,0),Point(e->Bounds.Width - 1,0)};
   e->Graphics->DrawLines( SystemPens::ControlLightLight, temp1 );
   array<Point>^ temp2 = {Point(0,e->Bounds.Height - 1),Point(e->Bounds.Width - 1,e->Bounds.Height - 1),Point(e->Bounds.Width - 1,0)};
   e->Graphics->DrawLines( SystemPens::ControlDarkDark, temp2 );
   
   // Specify custom text formatting flags.
   TextFormatFlags sf = static_cast<TextFormatFlags>(TextFormatFlags::VerticalCenter | TextFormatFlags::HorizontalCenter | TextFormatFlags::NoFullWidthCharacterBreak);
   
   // Draw the standard text with customized formatting options.
   e->DrawText( sf );
}
// Draw a custom 3D border if the ToolTip is for button1.
if (e.AssociatedControl == button1)
{
    // Draw the standard background.
    e.DrawBackground();

    // Draw the custom border to appear 3-dimensional.
    e.Graphics.DrawLines(SystemPens.ControlLightLight, new Point[] {
        new Point (0, e.Bounds.Height - 1), 
        new Point (0, 0), 
        new Point (e.Bounds.Width - 1, 0)
    });
    e.Graphics.DrawLines(SystemPens.ControlDarkDark, new Point[] {
        new Point (0, e.Bounds.Height - 1), 
        new Point (e.Bounds.Width - 1, e.Bounds.Height - 1), 
        new Point (e.Bounds.Width - 1, 0)
    });

    // Specify custom text formatting flags.
    TextFormatFlags sf = TextFormatFlags.VerticalCenter |
                         TextFormatFlags.HorizontalCenter |
                         TextFormatFlags.NoFullWidthCharacterBreak;

    // Draw the standard text with customized formatting options.
    e.DrawText(sf);
}
' Draw a custom 3D border if the ToolTip is for button1.
If (e.AssociatedControl Is button1) Then
    ' Draw the standard background.
    e.DrawBackground()

    ' Draw the custom border to appear 3-dimensional.
    e.Graphics.DrawLines( _
        SystemPens.ControlLightLight, New Point() { _
        New Point(0, e.Bounds.Height - 1), _
        New Point(0, 0), _
        New Point(e.Bounds.Width - 1, 0)})
    e.Graphics.DrawLines( _
        SystemPens.ControlDarkDark, New Point() { _
        New Point(0, e.Bounds.Height - 1), _
        New Point(e.Bounds.Width - 1, e.Bounds.Height - 1), _
        New Point(e.Bounds.Width - 1, 0)})

    ' Specify custom text formatting flags.
    Dim sf As TextFormatFlags = TextFormatFlags.VerticalCenter Or _
                         TextFormatFlags.HorizontalCenter Or _
                         TextFormatFlags.NoFullWidthCharacterBreak

    ' Draw standard text with customized formatting options.
    e.DrawText(sf)

Uwagi

Obiekt służy Graphics do dostosowywania rysunku niektórych aspektów wizualnych elementu ToolTip. Możesz na przykład narysować własne tło ToolTip przy użyciu Graphics.FillRectangle metody .

Każdy rysunek niestandardowy, który jest wykonywany poza prostokątem określonym przez Bounds właściwość, nie będzie wyświetlany. Granice ToolTip obiektu można zwiększyć, zanim zostanie on wyświetlony, obsługując ToolTip.Popup zdarzenie.

Klasa DrawToolTipEventArgs udostępnia DrawBackgroundDrawText również metody i DrawBorder do rysowania poszczególnych części ToolTip elementu w standardowy sposób używany przez system operacyjny. Można użyć tych metod, wraz z Graphics metodami obiektów, aby niektóre części standardu ToolTip były dostosowywane podczas dostosowywania innych części.

Dotyczy