Udostępnij za pośrednictwem


TabControl.GetTabRect(Int32) Metoda

Definicja

Zwraca prostokąt ograniczenia dla określonej karty w tej kontrolce karty.

public:
 System::Drawing::Rectangle GetTabRect(int index);
public System.Drawing.Rectangle GetTabRect (int index);
member this.GetTabRect : int -> System.Drawing.Rectangle
Public Function GetTabRect (index As Integer) As Rectangle

Parametry

index
Int32

Indeks oparty na zera na żądanej karcie.

Zwraca

Rectangle, który reprezentuje granice określonej karty.

Wyjątki

Indeks jest mniejszy niż zero.

-lub-

Indeks jest większy lub równy Count.

Przykłady

Poniższy przykład kodu tworzy TabControl z jednym TabPage. W tym przykładzie użyto metody GetTabRect w celu uzyskania Rectangle reprezentującego obszar karty tabPage1. myTabRect Rectangle jest rysowany przez zdarzenie DrawItem.

W tym przykładzie użyj System.Drawing i System.Windows.Forms przestrzeni nazw.

using namespace System::Drawing;
using namespace System::Windows::Forms;
public ref class Form1: public Form
{
private:
   TabControl^ tabControl1;
   Rectangle myTabRect;

public:
   Form1()
   {
      tabControl1 = gcnew TabControl;
      TabPage^ tabPage1 = gcnew TabPage;
      tabControl1->Controls->Add( tabPage1 );
      tabControl1->DrawMode = TabDrawMode::OwnerDrawFixed;
      tabControl1->Location = Point(25,25);
      tabControl1->Size = System::Drawing::Size( 250, 250 );
      tabPage1->TabIndex = 0;
      
      // Gets the tabPage1 tab area defined by its TabIndex.
      // Returns a Rectangle to myTabRect.
      myTabRect = tabControl1->GetTabRect( 0 );
      ClientSize = System::Drawing::Size( 300, 300 );
      Controls->Add( tabControl1 );
      tabControl1->DrawItem += gcnew DrawItemEventHandler( this, &Form1::OnDrawItem );
   }


private:
   void OnDrawItem( Object^ /*sender*/, DrawItemEventArgs^ e )
   {
      Graphics^ g = e->Graphics;
      Pen^ p = gcnew Pen( Color::Blue );
      g->DrawRectangle( p, myTabRect );
   }

};

int main()
{
   Application::Run( gcnew Form1 );
}
using System.Drawing;
using System.Windows.Forms;

public class Form1 : Form
{
    private TabControl tabControl1;
    private Rectangle myTabRect;

    public Form1()
    {
        tabControl1 = new TabControl();
        TabPage tabPage1 = new TabPage();

        tabControl1.Controls.Add(tabPage1);
        tabControl1.DrawMode = TabDrawMode.OwnerDrawFixed;
        tabControl1.Location = new Point(25, 25);
        tabControl1.Size = new Size(250, 250);

        tabPage1.TabIndex = 0;

        // Gets the tabPage1 tab area defined by its TabIndex.
        // Returns a Rectangle to myTabRect.
        myTabRect = tabControl1.GetTabRect(0);

        ClientSize = new Size(300, 300);
        Controls.Add(tabControl1);

        tabControl1.DrawItem += new DrawItemEventHandler(OnDrawItem);
    }
 
    private void OnDrawItem(object sender, DrawItemEventArgs e)
    {
        Graphics g = e.Graphics;
        Pen p = new Pen(Color.Blue);
        g.DrawRectangle(p, myTabRect);
    }

    static void Main() 
    {
        Application.Run(new Form1());
    }
}
Imports System.Drawing
Imports System.Windows.Forms

Public Class Form1
    Inherits Form
    Private tabControl1 As TabControl
    Private myTabRect As Rectangle

    Public Sub New()
        tabControl1 = New TabControl()
        Dim tabPage1 As New TabPage()

        tabControl1.Controls.Add(tabPage1)
        tabControl1.DrawMode = TabDrawMode.OwnerDrawFixed
        tabControl1.Location = New Point(25, 25)
        tabControl1.Size = New Size(250, 250)

        tabPage1.TabIndex = 0

        ' Gets the tabPage1 tab area defined by its TabIndex.
        ' Returns a Rectangle to myTabRect.
        myTabRect = tabControl1.GetTabRect(0)

        ClientSize = New Size(300, 300)
        Controls.Add(tabControl1)

        AddHandler tabControl1.DrawItem, AddressOf OnDrawItem
    End Sub

    Private Sub OnDrawItem(ByVal sender As Object, ByVal e As DrawItemEventArgs)
        Dim g As Graphics = e.Graphics
        Dim p As New Pen(Color.Blue)
        g.DrawRectangle(p, myTabRect)
    End Sub

    Shared Sub Main()
        Application.Run(New Form1())
    End Sub
End Class

Dotyczy