bangnaga icon

Delphi MDI ChildForm (2 Cara)

bangnaga | PRO | 09/07/15 03:22:23 PM UTC | 0 ⭐ | 395 👁️ | Never ⏰ | []
Pascal |

1.93 KB

|

None

|

0 👍

/

0 👎

type
  TForm1 = class(TdxRibbonForm)
    dxRibbon1Tab1: TdxRibbonTab;
    dxRibbon1: TdxRibbon;
    dxSkinController1: TdxSkinController;
    dxBarManager1: TdxBarManager;
    dxBarManager1Bar1: TdxBar;
    dxBarButton1: TdxBarButton;
    dxBarButton2: TdxBarButton;
    dxBarButton3: TdxBarButton;
    procedure dxBarButton1Click(Sender: TObject);
    procedure dxBarButton2Click(Sender: TObject);
    procedure dxBarButton3Click(Sender: TObject);
  private
   procedure  SwitchToChild(AMain, AChild: TForm);
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
 
{$R *.dfm}
 
procedure TForm1.SwitchToChild(AMain, AChild: TForm);
begin
  SendMessage(AMain.ClientHandle, WM_SETREDRAW, 0, 0);
  AChild.Show;
  SendMessage(AMain.ClientHandle, WM_SETREDRAW, 1, 0);
  RedrawWindow(AMain.ClientHandle, nil, 0,
    RDW_FRAME or RDW_INVALIDATE or RDW_ALLCHILDREN or RDW_UPDATENOW);
end;
 
 
procedure TForm1.dxBarButton1Click(Sender: TObject);
begin
    SwitchToChild(Self, ChildForm1);
end;
 
procedure TForm1.dxBarButton2Click(Sender: TObject);
begin
    SwitchToChild(Self, ChildForm2);
end;
 
procedure TForm1.dxBarButton3Click(Sender: TObject);
begin
    SwitchToChild(Self, ChildForm3);
end;
 
 
//Cara Ke II
procedure TFrmMenuUtama.dxBarLargeButton52Click(Sender: TObject);
begin
 
  try
    if application.findcomponent('FrmBroBarang')=nil then
    begin
      SendMessage(Application.MainForm.ClientHandle,WM_SETREDRAW,0,0);
      FrmBroBarang := TFrmBroBarang.Create(application);
      FrmBroBarang.FormStyle:=fsMDIChild;
      FrmBroBarang.Show;
    end
    else
    begin
      FrmBroBarang.BringToFront;
    end;
  finally
    SendMessage(Application.MainForm.ClientHandle,WM_SETREDRAW,1,0);
    RedrawWindow(Application.MainForm.ClientHandle, nil, 0, RDW_FRAME or RDW_INVALIDATE or RDW_ALLCHILDREN or RDW_NOINTERNALPAINT);
  end;
end;
 
 
end.

Comments