Bagikan melalui


TabControl.GetTabRect(Int32) Metode

Definisi

Mengembalikan persegi panjang pembatas untuk tab tertentu dalam kontrol tab ini.

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

Parameter

index
Int32

Indeks berbasis nol dari tab yang Anda inginkan.

Mengembalikan

Rectangle yang mewakili batas tab yang ditentukan.

Pengecualian

Indeks kurang dari nol.

-atau-

Indeks lebih besar dari atau sama dengan Count.

Contoh

Contoh kode berikut membuat TabControl dengan satu TabPage. Contoh ini menggunakan metode GetTabRect untuk mendapatkan Rectangle yang mewakili area tab tabPage1. myTabRect Rectangle digambar oleh peristiwa DrawItem.

Gunakan namespace System.Drawing dan System.Windows.Forms dengan contoh ini.

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

Berlaku untuk