Hallihallo,
hätte mal eine Frage, ich habe hier ein großes Projekt mit sehr viel fremdem Code, den ich leider nicht ganz durchblicke. ???: Was mich an dem Code auch so verwirrt ist, dass gbc immer wieder benutzt wird für andere Komponenten, aber zwischendurch werden Variablen an gbc geändert.
Ich möchte in einem GridBagLayout unter dem ButtonPanel ein weiteres Panel anbringen.
Hier mal der relevante Code dazu
Und die von mir erstellte Klasse MessagePanel
Die Klasse ButtonPanel selbst nutzt das FlowLayout.
Wie schaffe ich es jetzt, dass im ersten Codeschnipsel unter dem ButtonPanel mein MessagePanel angezeigt wird? Mein Versuch macht leider nicht wirklich das gewünschte, die Zeile wird zwar etwas höher, aber der Text Hello World ist nirgends zu sehen.
hätte mal eine Frage, ich habe hier ein großes Projekt mit sehr viel fremdem Code, den ich leider nicht ganz durchblicke. ???: Was mich an dem Code auch so verwirrt ist, dass gbc immer wieder benutzt wird für andere Komponenten, aber zwischendurch werden Variablen an gbc geändert.
Ich möchte in einem GridBagLayout unter dem ButtonPanel ein weiteres Panel anbringen.
Hier mal der relevante Code dazu
Java:
public void run() {
gridbag = new GridBagLayout();
vncContainer.setLayout(gridbag);
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridwidth = GridBagConstraints.REMAINDER;
gbc.anchor = GridBagConstraints.NORTHWEST; //last column or row)
if (showControls) {
buttonPanel = new ButtonPanel(this);
gridbag.setConstraints(buttonPanel, gbc);
vncContainer.add(buttonPanel);
}
if(showMsgPanel){
gbc.anchor = GridBagConstraints.LINE_START;
msgPanel = new MessagePanel(this);
gridbag.setConstraints(msgPanel, gbc);
vncContainer.add(msgPanel);
}
[.....]
Und die von mir erstellte Klasse MessagePanel
Java:
/*
* This class implements a Panel to display hints during playback.
*/
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class MessagePanel extends Panel {
Panel msgPanel;
VncViewer viewer;
MessagePanel(VncViewer v){
viewer = v;
msgPanel = new Panel();
showMessage("Hello World");
}
public void showMessage(String s){
Label msg = new Label(s);
msgPanel.add(msg);
}
}
Wie schaffe ich es jetzt, dass im ersten Codeschnipsel unter dem ButtonPanel mein MessagePanel angezeigt wird? Mein Versuch macht leider nicht wirklich das gewünschte, die Zeile wird zwar etwas höher, aber der Text Hello World ist nirgends zu sehen.
Zuletzt bearbeitet: