unit uDruckerPanel;
interface
uses System.Classes,
Vcl.ExtCtrls,
Vcl.StdCtrls, AboutOwn;
Type
TDruckerPanel = Class(TPanel)
private
fLBDruckerAusWahl : TListbox;
flblUeberschrift : TLabel;
flblAnzeigen : TLabel;
flblAuswahl : TLabel;
fDrucker : String;
<snip>
.
.
.
.
.
.
.
End;
implementation
//uses Printers;
uses System.SysUtils,
VCL.Forms, System.IniFiles,
VCL.Printers,
VCL.Controls,
Vcl.Graphics;
Procedure TDruckerPanel.Init;
begin
<snip>
height := 400;
width := 250;
end;
Procedure TDruckerPanel.WriteDruckerName(sDrucker : String);
Begin
fDrucker := sDrucker; //
flblAuswahl.Caption := fDrucker;
End;
Procedure TDruckerPanel.WriteDruckerNummer(sNr : Integer);
Begin
fDruckerNummer := sNr; //
Printer.PrinterIndex := sNr;
End;
Procedure TDruckerPanel.Show;
begin
inherited;
fLBDruckerAusWahl.Show;
Application.ProcessMessages;
end;
Constructor TDruckerPanel.Create(AOwner : TComponent);
var x : integer;
var ini : TIniFile;
begin
inherited create(AOwner);
Init;
ParentFont := false;
ParentColor := false;
color := clMoneyGreen;
fPanTop := TPanel.Create(self);
fPanTop.Parent := self;
fpanTop.Height := 25;
fPanTop.Align := alTop;
fPanTop.ParentColor := false;
fPanTop.color := clMoneyGreen;
fPanBottom := TPanel.Create(self);
fPanBottom.Parent := self;
fPanBottom.Height := 25;
fPanBottom.Align := alBottom;
fPanMid := TPanel.Create(self);
fPanMid.Parent := self;
fPanMid.Align := alClient;
flblUeberschrift := TLabel.Create(self);
flblUeberschrift.Parent := fPanTop;
flblUeberschrift.Left := 20;
flblUeberschrift.Top := 5;
flblUeberschrift.Caption := 'Druckerauswahl';
flblUeberschrift.ParentFont := false;
flblUeberschrift.Font.Size := 10;
fLBDruckerAusWahl := TListbox.Create(self);
fLBDruckerAusWahl.SetSubComponent(True); // Brachte nix - ist drin - stört nicht
fLBDruckerAusWahl.Parent := fPanMid;
fLBDruckerAusWahl.Align := alClient;
fLBDruckerAusWahl.ParentFont := false;
fLBDruckerAusWahl.Font.Size := 8;
flblAnzeigen := TLabel.Create(self);
flblAnzeigen.Parent := fPanBottom;
flblAnzeigen.Top := 5;
flblAnzeigen.Left := 14;
flblAnzeigen.Caption := 'Auswahl:';
flblAnzeigen.ParentFont := false;
flblAnzeigen.Font.Size := 10;
flblAuswahl := TLabel.Create(self);
flblAuswahl.Parent := fPanBottom;
flblAuswahl.Top := flblAnzeigen.Top;
flblAuswahl.Left := 73;
flblAuswahl.ParentFont := false;
flblAuswahl.Font.Size := 10;
// Alles hab hier muss in der
IDE ausgeblendet werden,
// sonst knallt es!
//------------------
if not (CsDesigning in ComponentState) then
begin
fLBDruckerAusWahl.Items := Printer.Printers;
fLBDruckerAusWahl.ItemIndex := Printer.PrinterIndex;
<snip>
application.ProcessMessages;
end;
end;
Destructor TDruckerPanel.Destroy;
begin
freeandnil(flblAuswahl);
freeandnil(flblAnzeigen);
freeandnil(fLBDruckerAusWahl);
freeandnil(flblUeberschrift);
FreeAndNil(fPanMid);
FreeAndNil(fPanBottom);
FreeAndNil(fPanTop);
inherited;
end;
end.