tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
1
ZUGRIFFE
573
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Hallo zusammen,

    ich habe folgendes Problem:

    ich habe einem eigenen JDialog einen Druck-Button eingebaut.
    Hierüber wird im Hintergrund aus dem Text, der im Dialog angezeigt wird, ein Drucktext erzeugt, der als Datei gespeichert wird. Anschließend soll der Standard-Drucker-Auswahl-Dialog aufpoppen, um dort den gewünschten Drucker auswählen zu können ...

    Das Drucken klappt sehr, nur habe ich Problem mit der Anzeige des Drucker-Auswahl-Dialogs. Dies klappt leider nicht, da der genannte JDialog modal sein muss!
    Dies hat zur Folge, dass das Drucker-Auswahlfenster zwar erzeugt wird, aber natürlich auch hinter dem JDialog liegt und auch erst dann in den Vorgrund gebracht werden kann, wenn der JDialog wieder geschlossen worden ist.
    Wenn ich den JDialog auf nicht modal setze, wird er nur ganz kurz angezeigt, wartet aber natürlich nicht auf die Benutzereingabe "schliessen", sondern wird (programmgesteuert) sofort wieder geschlossen und die Anwendung läuft weiter, ohne das man das Drucken (oder andere Aktionen) aufrufen konnte.

    Dieser Aufruf des Drucker-Auswahlfensters geschieht mit javax.print.ServiceUI
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    
    // wenn als Device -1 übergeben wird, wird ein Dialog für das "Drucker auswählen" ausgegeben!
    if (iDevice == -1)
    {
        service = ServiceUI.printDialog(
        GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration(),
                        200, 200, printService, defaultService, flavor, pras
                    );
    }

    So wie es sehe, kann ich hierbei ja weder ein Parent übergeben noch auch diesen Dialog modal setzen ...

    Hat irgendwer eine Idee, wie ich dieses Problem lösen kann ?

    Danke und Gruß
    Klaus
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  2. #2
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Ah, ich bin gerade im Web zufällig über die Lösung gestolpert
    Ich musste den genannten JDialog auf DOCUMENT_MODAL setzen (das geht ab Java6) !

    Code java:
    1
    
    this.setModalityType( JDialog.ModalityType.DOCUMENT_MODAL );

    Gruß und allerseits schöne Feiertage !
    Klaus
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 23.11.10, 16:09
  2. Problem mit Brother-Drucker "dcp 115 c"
    Von chriscrossno123 im Forum Hardware
    Antworten: 0
    Letzter Beitrag: 16.03.10, 21:13
  3. Antworten: 0
    Letzter Beitrag: 15.09.09, 19:27
  4. Antworten: 1
    Letzter Beitrag: 19.10.07, 08:45
  5. Erfahrungen mit "Lexmark Z65n" Drucker?
    Von bigtail im Forum Hardware
    Antworten: 1
    Letzter Beitrag: 23.11.03, 19:46