AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Drucker ComboBox

Ein Thema von Eppos · begonnen am 13. Nov 2010 · letzter Beitrag vom 13. Nov 2010
Antwort Antwort
Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#1

Drucker ComboBox

  Alt 13. Nov 2010, 16:40
Hallo zusammen,

ich habe mir eine Komponente geschrieben, die in einer ComboBox alle Drucker auflistet.
Ich fülle die Komponente wie folgt:
Delphi-Quellcode:
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 diese Komponente verwende dann erscheinen auf meinem Rechner die korrekten Drucker.
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
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Drucker ComboBox

  Alt 13. Nov 2010, 17:03
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.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Drucker ComboBox

  Alt 13. Nov 2010, 17:09
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;
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

AW: Drucker ComboBox

  Alt 13. Nov 2010, 18:03
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.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#5

AW: Drucker ComboBox

  Alt 13. Nov 2010, 18:12
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;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)

Geändert von Bummi (13. Nov 2010 um 18:15 Uhr) Grund: Ergänzung
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Drucker ComboBox

  Alt 13. Nov 2010, 18:19
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.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#7

AW: Drucker ComboBox

  Alt 13. Nov 2010, 18:30
@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.
http://www.delphipraxis.net/155916-[trickkiste-komponentenentwickl]-sauberes-verbergen-von-properties-im-objectinspector.html#post1061299
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Drucker ComboBox

  Alt 13. Nov 2010, 19:19
wie soll ich sagen, es geht

Danke.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz