Aprendendo a modelar forms no Kylix
Olá amigos da comunidade, nesse artigo vou ensinar-lhes como modelar um form no kylix. Dessa forma você poderá criar aplicações com um design exclusivo, podendo até mesmo criar skins personalizadas.
Introdução
Bom amigos, nesse artigo vou ensinar a criar aplicações que
se diferenciam das demais. Por muito tempo os programadores
ficaram prisioneiros de janelas padronizadas, não conseguindo
criar uma aplicação que desse evasão a sua criatividade gráfica.
Primeiramente vamos criar um botão e na sua propriedade "caption" vamos colocar "Sair".
Feito isso, vamos dar um duplo clique na "form" e partir para a programação. Localize a cláusula "uses" para declarar nossa API QT:
Primeiramente vamos criar um botão e na sua propriedade "caption" vamos colocar "Sair".
Feito isso, vamos dar um duplo clique na "form" e partir para a programação. Localize a cláusula "uses" para declarar nossa API QT:
interface
uses
SysUtils, Types, Classes, QGraphics, QControls, QForms, QDialogs, QStdCtrls, Qt;
uses
SysUtils, Types, Classes, QGraphics, QControls, QForms, QDialogs, QStdCtrls, Qt;
Agora vamos criar uma declaração privada no qual ficará responsável de guardar nossa skin:
private
{ Private declarations }
FBitmap : TBitmap;
{ Private declarations }
FBitmap : TBitmap;
Dê um duplo clique no botão "Sair" e coloque nossa instrução de saída do programa, pois quando modelamos nossa form nós automaticamente perdemos os botões padrões de minimizar, maximizar e fechar, Por isso vamos usar o nosso botão para que possamos encerrar o programa depois que ele estiver com a skin.
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.terminate;
end;
begin
Application.terminate;
end;
Dê um duplo clique na form e entre na procedure FormCreate. Aqui vamos iniciar a modelagem propriamente dita:
procedure TForm1.FormCreate(Sender: TObject);
var
Skin : TBitmap;
begin
// cria a Skin e carrega o bitmap
Skin := TBitmap.Create;
Skin.LoadFromFile('pinguim.bmp');
// converte o bitmap em monocromático
Skin.Mask(clWhite);
// cria o bitmap
FBitmap := TBitmap.Create;
// carrega o bitmap desejado
FBitmap.LoadFromFile('pinguim.bmp');
// limita a área de desenho do skin
QWidget_setMask(Handle, QPixmap_mask(Skin.Handle));
// não precisamos mais da máscara - libera a memória
Skin.Free;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
FBitmap.Free;
end;
procedure TForm1.FormPaint(Sender: TObject);
begin
Canvas.Draw(0,0,FBitmap);
end;
var
Skin : TBitmap;
begin
// cria a Skin e carrega o bitmap
Skin := TBitmap.Create;
Skin.LoadFromFile('pinguim.bmp');
// converte o bitmap em monocromático
Skin.Mask(clWhite);
// cria o bitmap
FBitmap := TBitmap.Create;
// carrega o bitmap desejado
FBitmap.LoadFromFile('pinguim.bmp');
// limita a área de desenho do skin
QWidget_setMask(Handle, QPixmap_mask(Skin.Handle));
// não precisamos mais da máscara - libera a memória
Skin.Free;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
FBitmap.Free;
end;
procedure TForm1.FormPaint(Sender: TObject);
begin
Canvas.Draw(0,0,FBitmap);
end;
Bom, depois de tudo feito é só executar o programa e administrar o seu novo layout.
=============================
Viva a liberdade dos códigos
=============================
Abraços!
Master_Foca.