Also, witzig ist, dass der nun in der
IDE den selektierten Drucker anzeigt.
Zur Runtime leider nicht
Beim Create:
Code:
if not (CsDesigning in ComponentState) then
begin
fLBDruckerAuswahl.Items := Printer.Printers;
fDruckerNummer := Printer.PrinterIndex;
fDrucker := fLBDruckerAuswahl.Items[fDruckerNummer];
flblAuswahlnr.Caption := IntToStr(fDruckerNummer);
flblAuswahl.Caption := fDrucker;
// funktioniert leider nicht!
Application.ProcessMessages;
fLBDruckerAuswahl.ItemIndex := Printer.PrinterIndex;
fLBDruckerAuswahl.Selected[Printer.PrinterIndex];
fLBDruckerAuswahl.Repaint;
Application.ProcessMessages;
fLBDruckerAuswahl.Refresh;
Application.ProcessMessages;
fLBDruckerAuswahl.OnClick := fLBDruckerAuswahlClick;
fLBDruckerAuswahl.OnDblClick := fLBDruckerAuswahlDoppelKlick;
end;
CreateWND
Code:
procedure TDruckerPanel.CreateWnd;
begin
inherited;
if (csDesigning in ComponentState) then
begin
fLBDruckerAuswahl.Items := Printer.Printers;
fDruckerNummer := Printer.PrinterIndex;
fDrucker := Printer.Printers[Printer.PrinterIndex];
flblAuswahlnr.Caption := IntToStr(Printer.PrinterIndex);
flblAuswahl.Caption := fDrucker;
Application.ProcessMessages;
fLBDruckerAuswahl.ItemIndex := Printer.PrinterIndex;
fLBDruckerAuswahl.Selected[Printer.PrinterIndex] := true;
fLBDruckerAuswahl.Repaint;
end;
Application.ProcessMessages;
end;
Beste Grüße
mcinternet