Kodbank İndir

! CODEBANK 2012 !

İNDİRMEK&DETAYLI BİLGİ ALMAK İÇİN BURAYI TIKLAYINIZ.

ÖNEMLİ AÇIKLAMA: MUTLAKA OKUYUNUZ!

Gönderen Konu: PAGECONTROL DE FORMLARI GÖSTERME  (Okunma sayısı 1573 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı dynamo

  • Kıdemli Üye
  • *****
  • İleti: 120
  • Rep: +3/-1
PAGECONTROL DE FORMLARI GÖSTERME
« : 31 Ocak 2010 20:47:31 »
//Placing a Form inside a TabSheet of a TPageControl

programdaki formları(pencereleri) PageControl componentinde tab olarak gösterir:

Kod: [Seç]
procedure TForm1.Button1Click(Sender: TObject);
var
   aForm : TForm2;
   tabSheet : TTabSheet;
begin
   tabSheet := TTabSheet.Create(PageControl1) ;
   tabSheet.PageControl := PageControl1;
   //create a form
   aForm := TForm2.Create(tabSheet) ;
   aForm.Parent := tabSheet;
   aForm.Align := alClient;
   aForm.BorderStyle := bsNone;
   aForm.Visible := true;
   tabSheet.Caption := 'form2';
   //activate the sheet
   PageControl1.ActivePage := tabsheet;


end;


Next Componentleri (BERGSOFT) kullanılarak yapılanı:

Kod: [Seç]
procedure TForm1.NxButton1Click(Sender: TObject);
var
   aForm : TForm2;
   NewPage: TNxTabSheet;
   i:string;
    bExists : Boolean;
    iPage: Integer;
begin

   i := 'New Page';
   bExists := False;
   for iPage := 0 to NxPageControl1.PageCount - 1 do
      if i = NxPageControl1.Pages[iPage].caption then
      begin
                 bExists := True;
                 break;
      end;

if not bExists then  begin

   NewPage := TNxTabSheet.Create(Self);
   NewPage.Caption := 'New Page';
   NxPageControl1.AddPage(NewPage);

   //create a form
   aForm := TForm2.Create(NewPage) ;
   aForm.Parent := NewPage;
   aForm.Align := alClient;
   aForm.BorderStyle := bsNone;
   aForm.Visible := true;

   //activate the sheet
   NxPageControl1.ActivePage := NewPage;

end;

end;



örnek program:

Kod: [Seç]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Menus;

type
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    MainMenu1: TMainMenu;
    lemler1: TMenuItem;
    form11: TMenuItem;
    form21: TMenuItem;
    form31: TMenuItem;
    procedure form11Click(Sender: TObject);
    procedure form21Click(Sender: TObject);
    procedure form31Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses unit2,unit3,unit4;

procedure TForm1.form11Click(Sender: TObject);
var
   aForm : TForm2;
   tabSheet: TTabSheet;
   iCaption:string;
   bExists : Boolean;
   iPage: Integer;
begin

   iCaption := 'Form 2';
   bExists := False;
   for iPage := 0 to PageControl1.PageCount - 1 do
      if iCaption = PageControl1.Pages[iPage].caption then
      begin
         bExists := True;
         tabSheet:=PageControl1.Pages[iPage];
         break;
      end;

   if not bExists then
   begin
      tabSheet := TTabSheet.Create(PageControl1) ;
      tabSheet.PageControl := PageControl1;
       //create a form
      aForm := TForm2.Create(tabSheet) ;
      aForm.Parent := tabSheet;
      aForm.Align := alClient;
      aForm.BorderStyle := bsNone;
      aForm.Visible := true;
      tabSheet.Caption := iCaption;


   end;
   //activate the sheet
   PageControl1.ActivePage := tabSheet;



end;

procedure TForm1.form21Click(Sender: TObject);
var
   aForm : TForm3;
   tabSheet: TTabSheet;
   iCaption:string;
   bExists : Boolean;
   iPage: Integer;
begin

   iCaption := 'Form 3';
   bExists := False;
   for iPage := 0 to PageControl1.PageCount - 1 do
      if iCaption = PageControl1.Pages[iPage].caption then
      begin
         bExists := True;
         tabSheet:=PageControl1.Pages[iPage];
         break;
      end;

   if not bExists then
   begin
      tabSheet := TTabSheet.Create(PageControl1) ;
      tabSheet.PageControl := PageControl1;
       //create a form
      aForm := TForm3.Create(tabSheet) ;
      aForm.Parent := tabSheet;
      aForm.Align := alClient;
      aForm.BorderStyle := bsNone;
      aForm.Visible := true;
      tabSheet.Caption := iCaption;


   end;
   //activate the sheet
   PageControl1.ActivePage := tabSheet;



end;

procedure TForm1.form31Click(Sender: TObject);
var
   aForm : TForm4;
   tabSheet: TTabSheet;
   iCaption:string;
   bExists : Boolean;
   iPage: Integer;
begin

   iCaption := 'Form 4';
   bExists := False;
   for iPage := 0 to PageControl1.PageCount - 1 do
      if iCaption = PageControl1.Pages[iPage].caption then
      begin
         bExists := True;
         tabSheet:=PageControl1.Pages[iPage];
         break;
      end;

   if not bExists then
   begin
      tabSheet := TTabSheet.Create(PageControl1) ;
      tabSheet.PageControl := PageControl1;
       //create a form
      aForm := TForm4.Create(tabSheet) ;
      aForm.Parent := tabSheet;
      aForm.Align := alClient;
      aForm.BorderStyle := bsNone;
      aForm.Visible := true;
      tabSheet.Caption := iCaption;


   end;
   //activate the sheet
   PageControl1.ActivePage := tabSheet;



end;

end.



Çevrimdışı GöKOğLaN

  • Kıdemli Üye
  • *****
  • İleti: 89
  • Rep: +0/-0
  • Cinsiyet: Bay
Ynt: PAGECONTROL DE FORMLARI GÖSTERME
« Yanıtla #1 : 28 Eylül 2010 11:08:18 »
Eyvallah.