Não é a linguagem de programação que define o programador, mas sim sua lógica

Remove a border of TabSheet of PageControl


Para usar o TPageControl "secretamente" em um formulário. Para que também oculte a barra de tabulação na parte superior do controle. Eu descobri como fazer isso no fórum.

Vamos personalizá-lo da seguinte maneira.

Agora vamos preparar a nossa classe. Vamos declarar nas uses de cima a CommCtrl.
unit USistema;

interface

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

type
  TPageControl = class(ComCtrls.TPageControl)
  private
    procedure TCMAdjustRect(var Msg: TMessage); message TCM_ADJUSTRECT;
  end;

  TFPrincipal = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FPrincipal: TFPrincipal;

implementation

{$R *.dfm}

{ TPageControl }

procedure TPageControl.TCMAdjustRect(var Msg: TMessage);
begin
  inherited;
  if Msg.WParam = 0 then
    InflateRect(PRect(Msg.LParam)^, 4, 4)
  else
    InflateRect(PRect(Msg.LParam)^, -4, -4)
end;

Coloquei todo o código da tela a baixo pois não tem muito mistério, a classe que criamos faz todo o trabalho para nós.

0 comentários:

Postar um comentário