netbeans JPanel statt beschriftung auf JTabbedPane

alderwaran

Mitglied
hi zusammen,

ich bin grade dabei java zu lernen, arbeite dazu ein recht dickes buch mit beispielen durch und bin nun an einer stelle wo ich mich frage was denn die "best practice" sei.

der beispielcode bei dem ich grade bin (s.u.) ist recht einfach gehalten: es soll eine tabbed pane mit 3 tabs erstellt werden, die ersten beiden enthalten je ein jlabel und ein jtextfiled, die dritte eine textarea - so weit so gut.

nachdem ich alle vorangegangenen beispiele brav abgetippt und damit herumgespielt habe dachte ich mir das wäre doch mal eine tolle idee den designer von netbeans auzuprobieren in dem man grafische objekte so toll per grag&drop plazieren und ineinander schieben kann - hat auch geklappt bis zu dem punkt den reiter der dritten tab zu beschriften.
als besonderheit soll die dritte tab nicht wie die vorigen einfach beschriftet sein, sondern eine jpane im tabreiter haben welche wiederum ein jalbel und einen jbutton enthält.

das ist von netbeans nicht vorgesehen. also das draggen einer jpane auf den reiter führt dazu das eine neue tab angelegt, und nicht die jpane anstelle der tabbeschriftung eingesetzt wird.
ich hab mich jetzt mind. eine stunde durch alle möglichen propertys des jtabbedpanels geklickt und frage mich langsam
- hab ich was übersehen, respektive wie realisiert man solche "sonderfälle" und
- wer benutzt eigentlich wie häufig diesen designer um grafische anwendungen zu gestalten?

Java:
package de.jse6buch.kap21;

import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;

public class JFensterMitRegister extends JFrame
{
  public static void main(String[] args)
  {
    JFensterMitRegister f = new JFensterMitRegister();
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setVisible(true);
  }

  public JFensterMitRegister()
  {
    this.setTitle("Swing-Fenster mit Registerkarten");
    this.setBounds(200, 300, 500, 250);

    JTabbedPane jTP = new JTabbedPane(JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT);

    JPanel jPnl1 = new JPanel();
    jPnl1.add(new JLabel("Name: "));
    JTextField jTxt = new JTextField();
    jTxt.setPreferredSize(new Dimension(200, 25));
    jPnl1.add(jTxt);

    // ... weitere Personendaten
    jTP.addTab("Person", jPnl1);

    JPanel jPnl2 = new JPanel();
    jPnl2.add(new JLabel("Gehalt: "));
    JTextField jTxt2 = new JTextField();
    jTxt2.setPreferredSize(new Dimension(200, 25));
    jPnl2.add(jTxt2);

    //  ... weitere Personaldaten
    jTP.addTab("vertrauliche Daten", jPnl2);

    // dritte Registerkarte erzeugen
    final JTextArea jTA = new JTextArea();
    jTP.addTab(null, jTA);

    // Panel für Reiter
    JPanel jPnlReiter = new JPanel();
    JLabel jLbl = new JLabel("Optionale Angaben");
    final JCheckBox jCb = new JCheckBox();
    jCb.setSelected(true);
    jCb.addChangeListener(new ChangeListener()
    {
      public void stateChanged(ChangeEvent arg0)
      {
        if(jCb.isSelected())
          jTA.setEnabled(true);
        else 
          jTA.setEnabled(false);
      }    
    });
    jPnlReiter.add(jLbl,BorderLayout.WEST);
    jPnlReiter.add(jCb,BorderLayout.EAST);    
    jTP.setTabComponentAt(2, jPnlReiter);

    this.getContentPane().add(jTP);
  }
}
 

MQue

Top Contributor
Also das macht meiner Meinung nach wenig sinn, dass man auf den Reiter selber eine Komponente legt, der Reiter ist meines Wissens ein JLabel und da was darüberlegen, halte ich für übertrieben, vor allem was soll das bringen.

Ich verwende den Designer nicht sehr oft, es ist beim Lernen, wie man eine GUI zusammenstellt, ganz nett aber wenn man es selber programmiert, hat man die volle kontrolle über den Code, wenn du den designer nutzt, dann sind manche codezeilen gesperrt, man kann dann zwar diesen Code herauskopierten und in eine andere Klasse stecken, aber wenn man den Code dann ein bisschen verändern will, wirds schwierig, da Netbean eigene Container benutzt.
 

L-ectron-X

Gesperrter Benutzer
Du kannst den vom GUI-Builder erzeugten Code auch in NetBeans verändern/anpassen. Mit Klick auf den Code-Button kann Code an verschiedenen Stellen eingefügt oder komplett benutzerdefinierter Code vorgegeben und generierter Code mit diesem ausgetauscht werden.
 

MQue

Top Contributor
Das stimmt schon, aber wer macht das schon, zuerst den Code erzeugen lassen um sich dann damit zu beschäftigen, was da Netbeans macht (Code ist ziemlich kompakt -> das ist auf der einen Seite gut da wenig Code, zum umändern aber umständlich),
Ich würde mich mir der Swing/SWT/AWT programmierung beschäftigen, da bekommt nach nach kurzer Zeit auch sehr gute GUIs hin.
 

L-ectron-X

Gesperrter Benutzer
In den meisten Fällen ist es aber auch gar nicht nötig, am generierten Code Hand anzulegen.
Wenn du dir im GUI-Builder deine Oberfläche erzeugst, braucht dich der Code dahinter auch nicht unbedingt zu interessieren. Alles was dann ein Programmierer noch machen muss, sind die Zugriffsmethoden auf die Instanzvariablen zu schreiben. Mehr muss ein GUI auch gar nicht machen.
 

alderwaran

Mitglied
@mque: stimmt der code macht nicht oft sinn (obwohl mir spontan zumindest *ein* anwendungsfall einfällt) aber es ist halt beispielcode... java ermöglicht es das tabbeschriftungsobjekt zu verändern und netbeans' gui designer hat das nicht intuitiv implementiert, darum gehts mir.

@L-ectron-X: prinzipiell geht es ja darum
Java:
JLabel jLbl = new JLabel("Optionale Angaben");
    final JCheckBox jCb = new JCheckBox();
    jCb.setSelected(true);
    jCb.addChangeListener(new ChangeListener()
    {
      public void stateChanged(ChangeEvent arg0)
      {
        if(jCb.isSelected())
          jTA.setEnabled(true);
        else 
          jTA.setEnabled(false);
      }    
    });
    jPnlReiter.add(jLbl,BorderLayout.WEST);
    jPnlReiter.add(jCb,BorderLayout.EAST);    
    jTP.setTabComponentAt(2, jPnlReiter);
unter verwendung des richtigen jtabbedpane-objekts an der richtigen stelle im generierten code einzufügen.
ehrlich gesagt habe ich schwierigkeiten unter
attachment.php

wie von dir vorgeschlagen den richtigen punkt zu finden. für hints wäre ich wirklich dankbar :)

für die zukunft glaube ich wird es wohl eine mischung aus gui-designer und manuellem erstellen sein. was mir als unerfahrenem anfänger auffällt und bitter aufstösst ist zu sehen das designen und manuelle gestaltung wohl sehr unterschiedliche ansätze sind... alleine schon das der gui-builder für jede beschriftung auf externe resource-files zugreift. ist vielleicht ein vorteil - aber das kann ich bisher nicht erkennen.
 
G

Gast2

Gast
Solche "Spezial-Fälle" kann der Netbeans GUI Designer nicht. Du kannst einfach deinen code im Post-Creation Block einfügen (alternativ auch schon im Custom Creation Block). Das Problem ist nur das du das dann in der Preview nicht sehen wirst ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J eigenes JPanel in NetBeans importieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
Kartoffel_1 Spiele funktionieren auf NetBeans aber nicht auf Eclipse. IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 17
Petewin Netbeans 12.2 läßt sich nicht auf iMac installieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
N NetBeans IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
M Netbeans nutzt veraltete Bibliotheken für JAX-WS IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
W Debugger - Netbeans vs. VSCode IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
J Erstellen eines java Projekts mit Gradel in netbeans. IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 12
R Ist netbeans noch eine gute Wahl? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
mihe7 NetBeans 17 IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
MiMa Netbeans zu IntelliJ mit Maven konvertieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 14
I NetBeans 15 - Strg+Z (undo) und Strg+Y (redo) funzen nicht mehr nach Start der Java-Anwendung IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
J Netbeans 14 friert unter Linus Mint 21 prötzlich ein IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
mihe7 NetBeans NetBeans 16 ist da IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
M Altes Java Projekt in Netbeans importieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
MiMa Methoden in Netbeans vergleichen? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 23
M Linux Mint - Apache NetBeans 14 - Installationsanleitung deutsch IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
Neumi5694 Netbeans Warnung IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
T NetBeans NetBeans IDE 13 | Cannot find main class IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
J Seltsames Verhalten einer Klasse in netbeans IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
S License-Header in NetBeans 8.2 IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
G Netbeans 12.6 IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 9
kodela NetBeans App lässt sich ausßerhalb von NetBeans nicht ausführen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
J Netbeans - WakaTime - Plugin sendet keine Daten IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
J Netbeans - Werte von Variablen überwachen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
donnico2 Fehler beim Installieren von Apache Netbeans IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
J netbeans - refactoring funktioniert nicht mehr IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
S Netbeans unterstützung für "Rule Switch" - Bug? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
O NetBeans Netbeans 12.0 - Hintergrundfarbe, auch im Navigator und Projekt umstellen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
J Kombinationsproblem: netbeans, gradle, mysql, json IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
O NetBeans Netbeans 8.2 mit JKD 15 ? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
J Seltsames Verhalten von netbeans bezüglich fxml Dateien IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
J netbeans 12 - wie -Xlint:deprecation aktivieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
J Netbeans 11.1 - Gradel aktualisieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
E Suche aktuelle Netbeans-Version für Win 10 IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 30
B Netbeans: Java Script Libraries funktioniert nicht IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
J NetBeans Projekt erstellen nicht möglich IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
G eigene Library In NetBeans 11.1 IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
J Bekomme keine lauffähige jar (netbeans/gradle) IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 12
J Install JasperReports on netbeans/gradle Projekt IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
W NetBeans Umzug von Netbeans 8.2 -> Netbeans 11.1: Plug-Ins IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 7
F Umstieg von Netbeans 8 mit JDK 8 auf Apache Netbeans 11 mit OpenJDK 12 IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
MiMa JavaFX in Netbeans 11 installieren? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 32
G NetBeans Netbeans 8.2 hängt sich auf IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 15
W Netbeans and Git Projects IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
J NetBeans Dokumentation anderer Projekte IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
N Weder Eclipse noch Netbeans funktionieren auf Ubuntu 18.04 IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
J NetBeans Download NetBeans und Java SDK IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
MiMa compile with -Xlint bei Netbeans IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
C Netbeans Meldung: Git Push Failed IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
TheJavaKid NetBeans JDBC Library mit Netbeans in Jarfile mit packen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 13
J Netbeans: Einsicht in den Programmlauf IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
J NetBeans Notizen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
C maven startet jetty, netbeans "run" startet glassfish IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
L NetBeans NetBeans autofill einrichten IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
pcfreak9000 Eclipse Netbeans generics IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
K Netbeans + Maven: default pom Inhalt IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
B IDE Netbeans und Eclipse IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
M Netbeans CSS code completion abgeschaltet IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
TomatenBrot447 Netbeans ziegt mir falsche Tasteneingabe an IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
wolfgang63 Netbeans 8.2 ohne Projektvorlagen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
MiMa Ist Netbeans mist ??? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 14
K easy UML Plugin Netbeans 8.1 IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
WetWer NetBeans Wird NetBeans eigentlich noch unterstützt? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
F Netbeans Overriden - @ IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
Tort-E NetBeans Netbeans RCP Spracheinstellungen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
M Netbeans GUI Builder größe ändern IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
Y Tomcat aus Netbeans heraus starten schlägt fehl IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
A Login-Programmierung mit NetBeans IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 7
H Kann ich Commandline-Parameter in Eclipse oder Netbeans einfacher übergeben? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 5
F Netbeans Pfad IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
D NetBeans Maven Projekt in Netbeans => WEKA wirft (java.lang.OutOfMemoryError: Java heap space) IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
S NetBeans 8.0.2: Startprogramm meldet: Hilfsprogramm für den Tastaturverlauf funktioniert nicht mehr IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
A in netbeans 8 mit jdk 8 erstellte jar's laufen nicht auf anderen rechnern ohne jdk IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
L NetBeans und Ausgabenumlenkung in Datei IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
T NetBeans - Tastatur-Tricks IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
M NetBeans und UTF8 Problem IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
J Javadocs in Netbeans 7.4 dt. integrieren IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 4
D [NetBeans] NetBeans Plattform Application Fragen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
Y (NetBeans JSP) Findet @page import="org.apache.commons.fileupload.* nicht IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
C Netbeans - keine Sourcen in jar IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 0
M NetBeans JavaDB Exception IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 1
N Netbeans import/export IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
F NetBeans JLable Text ändern? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
MiMa Hin und her gerissen Netbeans und Eclipse IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
A Checkstyle + Netbeans + cfg File IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 8
B NetBeans GUI Vererbung mit Netbeans IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
J NetBeans Netbeans, Linux -> Was ist ein "bootstrap class path error" und wie kann man das wegbekommen? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
D C++ mit NetBeans benutzen. IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
C Pfad von .netbeans ändern IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 6
D GUI Building in NetBeans nur mit Zusatztool möglich? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
S Umstieg auf Netbeans ... ? IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
Jackii NetBeans Netbeans 7 Splash Screen erstellen IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 10
T MDI-Anwendung mit NetBeans IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
D NetBeans NetBeans Shortcuts IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
Guybrush Threepwood Jar-Export unter Netbeans (vs. Eclipse) IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
H Netbeans löscht Quelldatein IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
P Netbeans: Java-Plattformen verwalten IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
G Netbeans WS Client Clean and Build IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 2
H Test Project (x) Netbeans IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 3
L NetBeans 7.1 swing IDEs - Eclipse, IntelliJ IDEA, BlueJ & mehr 9

Ähnliche Java Themen


Oben