Cursor.Draw(Graphics, Rectangle) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nakreslí kurzor na zadanou plochu v rámci zadaných hranic.
public:
void Draw(System::Drawing::Graphics ^ g, System::Drawing::Rectangle targetRect);
public void Draw (System.Drawing.Graphics g, System.Drawing.Rectangle targetRect);
member this.Draw : System.Drawing.Graphics * System.Drawing.Rectangle -> unit
Public Sub Draw (g As Graphics, targetRect As Rectangle)
Parametry
Příklady
Následující příklad kódu nakreslí zadaný kurzor na formuláři v jeho normální velikosti a v roztaženém režimu dvakrát jeho velikost. Tento příklad vyžaduje, abyste při zavolání předali Form metodu a Cursor objekt.
void DrawCursorsOnForm( System::Windows::Forms::Cursor^ cursor )
{
// If the form's cursor is not the Hand cursor and the
// Current cursor is the Default, Draw the specified
// cursor on the form in normal size and twice normal size.
if ( this->Cursor != Cursors::Hand && System::Windows::Forms::Cursor::Current == Cursors::Default )
{
// Draw the cursor stretched.
Graphics^ graphics = this->CreateGraphics();
Rectangle rectangle = Rectangle(Point(10,10),System::Drawing::Size( cursor->Size.Width * 2, cursor->Size.Height * 2 ));
cursor->DrawStretched( graphics, rectangle );
// Draw the cursor in normal size.
rectangle.Location = Point(rectangle.Width + rectangle.Location.X,rectangle.Height + rectangle.Location.Y);
rectangle.Size = cursor->Size;
cursor->Draw( graphics, rectangle );
// Dispose of the cursor.
delete cursor;
}
}
private void DrawCursorsOnForm(Cursor cursor)
{
// If the form's cursor is not the Hand cursor and the
// Current cursor is the Default, Draw the specified
// cursor on the form in normal size and twice normal size.
if(this.Cursor != Cursors.Hand &
Cursor.Current == Cursors.Default)
{
// Draw the cursor stretched.
Graphics graphics = this.CreateGraphics();
Rectangle rectangle = new Rectangle(
new Point(10,10), new Size(cursor.Size.Width * 2,
cursor.Size.Height * 2));
cursor.DrawStretched(graphics, rectangle);
// Draw the cursor in normal size.
rectangle.Location = new Point(
rectangle.Width + rectangle.Location.X,
rectangle.Height + rectangle.Location.Y);
rectangle.Size = cursor.Size;
cursor.Draw(graphics, rectangle);
// Dispose of the cursor.
cursor.Dispose();
}
}
Private Sub DrawCursorsOnForm(cursor As Cursor)
' If the form's cursor is not the Hand cursor and the
' Current cursor is the Default, Draw the specified
' cursor on the form in normal size and twice normal size.
If (Not Me.Cursor.Equals(Cursors.Hand)) And _
Cursor.Current.Equals(Cursors.Default) Then
' Draw the cursor stretched.
Dim graphics As Graphics = Me.CreateGraphics()
Dim rectangle As New Rectangle(New Point(10, 10), _
New Size(cursor.Size.Width * 2, cursor.Size.Height * 2))
cursor.DrawStretched(graphics, rectangle)
' Draw the cursor in normal size.
rectangle.Location = New Point(rectangle.Width + _
rectangle.Location.X, rectangle.Height + rectangle.Location.Y)
rectangle.Size = cursor.Size
cursor.Draw(graphics, rectangle)
' Dispose of the cursor.
cursor.Dispose()
End If
End Sub
Poznámky
Příkaz kreslení pochází z grafické plochy reprezentované parametrem g
, ale Graphics neobsahuje informace o tom, jak vykreslit daný obrázek, takže předá volání Cursor. Metoda Draw ořezá obrázek na dané rozměry a umožňuje určit, Rectangle ve kterém se má nakreslit Cursor. Tato metoda se obvykle používá, pokud chcete nakreslit kurzor na grafický povrch. Můžete mít například dialogové okno, které uživateli umožňuje vybrat kurzory z ListBox ovládacího prvku nebo skupinu ovládacích RadioButton prvků.