![]() |
Drucker ComboBox
Hallo zusammen,
ich habe mir eine Komponente geschrieben, die in einer ComboBox alle Drucker auflistet. Ich fülle die Komponente wie folgt:
Delphi-Quellcode:
Wenn ich diese Komponente verwende dann erscheinen auf meinem Rechner die korrekten Drucker.
procedure TPrinterComboBox.LoadPrinters;
var x : Integer; begin Self.Items.Clear; Self.Items.Add( 'Standard Drucker' ); for x := 0 to printers.printer.Printers.Count -1 do Self.Items.Add( printers.Printer.Printers.Strings[ x ] ); end; Wenn ich aber das Programm auf meinem anderen PC installiere, dann erscheinen die gleichen Drucker wie auf meinem PC. Was mach ich falsch? Vielen Dank. Eppos |
AW: Drucker ComboBox
Wird denn die Methode wirklich aufgerufen?
Falls das nicht der Fall ist, werden vielleicht "Standarditems" angezeigt? PS: Self und die Unit printers musst Du nicht unbedingt explizit angeben. |
AW: Drucker ComboBox
Ich gehe davon das sie aufgerufen wird,
haben Sie so drin:
Delphi-Quellcode:
constructor TPrinterComboBox.Create(AOwner: TComponent);
begin inherited; fOfficeHint := TAdvHintInfo.Create; LoadPrinters; end; |
AW: Drucker ComboBox
Sind auf dem anderen Rechner vielleicht die gleichen Drucker installiert? Wenn die Rechner in keiner Weise miteinander vernetzt sind werden dir entweder standarditems angezeigt oder du hast die Daten vielleicht in einer Textdagei gespeichert und liest diese immer nur aus.
|
AW: Drucker ComboBox
Ich denke im Konstruktor zu suchen ist zu früh, danach werden ja noch die Stored Values geladen.
Da geb es IMHO ein Ereignis wie Loaded, mal suche ob ich es finde.... EDIT Procedure Loaded;override; |
AW: Drucker ComboBox
aber ist Loaded nicht dafür da um zu signalisieren das alle Properties geladen wurden? Die Items ändern sich zwischen Constructor und dem Ende von Loaded eigentlich nur wenn sie im Objektinspektor überschrieben wurden und wenn dem so ist sollte man das akzeptieren und die explizit veränderten Items nicht zurück ändern.
Ich denke Loaded ist hier ganz klar die falsche Stelle um die Items zu setzen. |
AW: Drucker ComboBox
@SirThornberry
Da der Konstruktor ja schon zur Designzeit aufgerufen wird, gehe ich davon aus daß die hier erstellten Einträge auch beim Speichern im DFM abgelegt werden (ein einfacher Blick ins DFM würde genügen). In dem hier vorgesehenen Anwendungfall sollten eher die Items ausgeblendet werden.:-D ![]() |
AW: Drucker ComboBox
wie soll ich sagen, es geht :-)
Danke. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz