1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Vollbild

  • hucskfjs
  • 3. Juli 2007 um 06:52
  • Unerledigt
  • hucskfjs
    8
    hucskfjs
    Mitglied
    Punkte
    575
    Beiträge
    80
    • 3. Juli 2007 um 06:52
    • #1
    Code
    private JPanel Platte;
    public Klasse()
    {
     super("Titel");
     Platte = new JPanel();
     setContentPane(Platte);
    }
    public static void main(String[] args)
    {
     Klasse Fenster = new Klasse();
     Fenster.setSize(1024,768);
     Fenster.setVisible(true);
    }
    Alles anzeigen


    Wie kann ich das Fenster ohne dem Rahmen (Titelleiste, CloseOperation), Taskleiste... im Vollbildmodus anzuzeigen?

  • Chief Justice
    4
    Chief Justice
    Mitglied
    Punkte
    110
    Beiträge
    22
    • 3. Juli 2007 um 09:09
    • #2

    Hallo,

    hab das mal vor einer halben Ewigkeit im awt gemacht. Hab den Code ausgegraben, aber bei meiner absoluten Hassliebe kann ich dir beim besten Willen nicht sagen, was genau da passeiert (der Aufruf erfolgt im Konstruktor eines Frames):

    Code
    // nested window listener:
    this.addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent event) {
            FullScreenDiagram.this.dispose();
        }
    });
    // no borders:
    this.setUndecorated(true);
    // set to full screen:
    GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
    gd.setFullScreenWindow(this);
    this.setResizable(false);
    //wtf?!
    if (!this.isDisplayable()) {
        this.setUndecorated(true);
    }
    //wft?!
    gd.setFullScreenWindow(this);
    // add components...
    Alles anzeigen

    Vielleicht hilft dir das weiter. Soviel ich weiß gibt es auf der Sun HP ein größeres Tutorial, wie man die ganzen GraphicsEnvironement Sachen verwendet.

    lG el Chefe

    P.S.: Bei mir hats geklappt.

  • Paulchen
    1
    Paulchen
    Gast
    • 3. Juli 2007 um 11:19
    • #3
    Zitat von hucskfjs

    Wie kann ich das Fenster ohne dem Rahmen (Titelleiste, CloseOperation), Taskleiste... im Vollbildmodus anzuzeigen?

    So, mal zum eigentlichen Problem: Titelleiste und Rahmen bekommst du so weg:

    Code
    Fenster.setUndecorated(true);

    Und dann muss ich noch ein wenig sudern: :winking_face:

    • "Klasse" ist nicht wirklich ein passender Name für eine Fensterklasse. Dass es sich hierbei um eine Klasse handelt, weiß ich eh.
    • Es ist in Java üblich, Klassennamen mit einem großen Anfangsbuchstaben zu beginnen, Paket- und Variablennamen mit einem Kleinbuchstaben (also "fenster" statt "Fenster").
    • Du kannst nicht davon ausgehen, dass auf dem System, auf dem deine Anwendung laufen soll, die Auflösung 1024x768 eingestellt ist. Du musst daher die Auflösung abrufen und die Fenstergröße auf diesen Wert festlegen:

      Code
      Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
      Fenster.setSize((int)dim.getWidth(),(int)dim.getHeight());


      (Dazu musst du java.awt.* importieren).

    • Wenn du ein komplettes Gerüst der Klasse geschrieben hättest, wär's für mich noch schneller gegangen, dir zu helfen. So muss ich erst herausfinden, dass die Klasse "Klasse" heißen soll, von "JFrame" abgeleitet wird und "javax.swing.*" importiert werden muss.

    So, jetzt hab ich aber genug gesudert. :)

  • hucskfjs
    8
    hucskfjs
    Mitglied
    Punkte
    575
    Beiträge
    80
    • 3. Juli 2007 um 18:58
    • #4

    aha

  • MaxAuthority
    17
    MaxAuthority
    Gewinner des Desktop-Contest 2002
    Reaktionen
    5
    Punkte
    3.165
    Beiträge
    626
    • 4. Juli 2007 um 01:13
    • #5
    Zitat von hucskfjs

    aha

    Find ich nicht grad die passende antwort auf einen aeussert informativen post von Paulchen...

    http://vimperator.org - Make Firefox behave like Vim

  • hucskfjs
    8
    hucskfjs
    Mitglied
    Punkte
    575
    Beiträge
    80
    • 4. Juli 2007 um 07:19
    • #6
    Zitat von MaxAuthority

    aeussert informativen


    danke

  • hucskfjs
    8
    hucskfjs
    Mitglied
    Punkte
    575
    Beiträge
    80
    • 4. Juli 2007 um 07:35
    • #7
    Zitat von Paulchen

    Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
    Fenster.setSize((int)dim.getWidth(),(int)dim.getHeight());


    Funktioniert, danke!

    Zitat von Paulchen

    Fenster.setUndecorated(true);


    Titelleiste und Rahmen sind immer noch da und das Bild schrumpft von Vollbild auf eine minimale Größe

    Fehlercode:

    Code
    [size=10][COLOR=#ff0000]Exception in thread "main" [/COLOR][/SIZE][U][size=10][COLOR=#000080]java.awt.IllegalComponentStateException[/COLOR][/SIZE][/U][size=10][COLOR=#ff0000]: The frame is displayable.[/COLOR][/SIZE]
    [size=10][COLOR=#ff0000]at java.awt.Frame.setUndecorated([/COLOR][/SIZE][U][size=10][COLOR=#000080]Frame.java:838[/COLOR][/SIZE][/U][size=10][COLOR=#ff0000])[/COLOR][/SIZE]
    [size=10][COLOR=#ff0000]at package.Class.main([/COLOR][/SIZE][U][size=10][COLOR=#000080]Fernseher.java:19[/COLOR][/SIZE][/U][size=10][COLOR=#ff0000])[/COLOR][/SIZE]
  • Paulchen
    1
    Paulchen
    Gast
    • 4. Juli 2007 um 09:32
    • #8

    Verwend mal javax.swing.JFrame statt java.awt.Frame (du verwendest ja auch javax.swing.JPanel, also warum nicht konsistent Swing verwenden?).

  • Sandybutt
    8
    Sandybutt
    Mitglied
    Reaktionen
    4
    Punkte
    554
    Beiträge
    99
    • 4. Juli 2007 um 10:32
    • #9

    Wie ich unlängst selber erfahren musste, klappt ein Aufruf von setUndecorated(true/false) nur dann, wenn das Fenster gerade nicht angezeigt wird. Daher ->

    Code
    this.setVisible(false);
    this.dispose();
    this.setUndecorated(true);
    this.setVisible(true);


    Alternativ kann man natürlich auch den Call zu setUndecorated machen, bevor das Fenster angezeigt wird.

    "I don't think that Debian can really compete with Gentoo. Sure it might be okay, but when it comes to dependencies, you probably are still going to have to get them all on your own. Or is there something like portage in the Debian world as well?"

  • hucskfjs
    8
    hucskfjs
    Mitglied
    Punkte
    575
    Beiträge
    80
    • 6. Juli 2007 um 13:38
    • #10

    danke funktionier schon

  • Maximilian Rupp 27. Dezember 2024 um 12:05

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung