S
Spellsleeper
Gast
Ich hab ein Problem !!!!!!!!!!!!!!!!!!!!!!!!
Ich bekomme auf meiner GUI im nachhinein eingefügte JLabell nicht angezeigt(Codezeile 459).
Ich weiß das mein Code nicht sonderlich schön ist aber die Stelle habe ich deutlich kommentiert.
Hoffe das jemand meine Blockade lösen kann!:rtfm:
Ps.Ich meine natürlich Label
Ich bekomme auf meiner GUI im nachhinein eingefügte JLabell nicht angezeigt(Codezeile 459).
Ich weiß das mein Code nicht sonderlich schön ist aber die Stelle habe ich deutlich kommentiert.
Hoffe das jemand meine Blockade lösen kann!:rtfm:

Ps.Ich meine natürlich Label
Java:
import java.awt.*;
public class BasicWindow extends JFrame {
Image ico=Toolkit.getDefaultToolkit().getImage("modu.png");
Image infoImg=Toolkit.getDefaultToolkit().getImage("info.png");
Icon infoIco=new ImageIcon(infoImg);
Image changeImg=Toolkit.getDefaultToolkit().getImage("change.png");
Icon changeIco=new ImageIcon(changeImg);
Image errorImg=Toolkit.getDefaultToolkit().getImage("error.png");
Image pdfImg=Toolkit.getDefaultToolkit().getImage("pdf.png");
Icon pdfIco=new ImageIcon(pdfImg);
Image askOneImg=Toolkit.getDefaultToolkit().getImage("/ASK/one.png");
Icon askOne=new ImageIcon(askOneImg);
Image askZeroImg=Toolkit.getDefaultToolkit().getImage("/ASK/zero.png");
Icon askZero=new ImageIcon(askZeroImg);
private JPanel contentPane;
public ArrayList<Integer> bitVal=new ArrayList<Integer>();
static JTextField txtVal;
static JLabel lblVal1,lblVal2,lblVal3,lblVal4,lblVal5,lblVal6,lblVal7,lblVal8;
JLabel lbl1,lbl2,lbl3,lbl4,lbl5,lbl6,lbl7,lbl8;
JLabel[] lL={lbl1,lbl2,lbl3,lbl4,lbl5,lbl6,lbl7,lbl8};
ArrayList<JLabel>lblList;
JPanel picPanel;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
BasicWindow frame = new BasicWindow();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public BasicWindow() {
lblList=new ArrayList<JLabel>();
for(JLabel l:lL){
l=new JLabel();
lblList.add(l);
}
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 900, 400);
final JTextArea txtExtra = new JTextArea();
txtExtra.setEditable(false);
setIconImage(ico);
contentPane = new JPanel();
contentPane.setBorder(new MatteBorder(1, 1, 1, 1, (Color) new Color(0, 0, 0)));
setContentPane(contentPane);
JPanel btnPanel = new JPanel();
btnPanel.setBorder(new BevelBorder(BevelBorder.RAISED, null, null, null, null));
btnPanel.setBackground(Color.ORANGE);
picPanel = new JPanel();
picPanel.setBorder(new MatteBorder(1, 1, 1, 1, (Color) new Color(0, 0, 0)));
picPanel.setBackground(UIManager.getColor("Button.highlight"));
JPanel valPanel = new JPanel();
valPanel.setBorder(new MatteBorder(1, 1, 1, 1, (Color) new Color(0, 0, 0)));
JButton infoBtn = new JButton("");
infoBtn.setToolTipText("Info");
infoBtn.setSize(48, 48);
infoBtn.setIcon(infoIco);
infoBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) { //Info-Button wird ausgefürt
txtExtra.setText("Dieses Programm wurde von Daniel Ritter im Jahr 2011 entwickelt."+"\n"+"Eine Anleitung in Form einer PDF-Datei liegt bei.\n<--");
}
});
txtVal = new JTextField();
txtVal.setToolTipText("Darzustellende Bits");
txtVal.setText("00000000");
for(char c:txtVal.getText().toCharArray()){ //bitVal wird vorgefüllt
bitVal.add((int)c);
}
txtVal.setColumns(10);
txtVal.addFocusListener(new FocusListener() {
@Override
public void focusLost(FocusEvent e){
txtValTObitVal();
}
@Override
public void focusGained(FocusEvent e){
}
});
JButton docBtn = new JButton(""); //Doku-Button
docBtn.setToolTipText("PDF-Doku");
docBtn.setIcon(pdfIco);
GroupLayout gl_contentPane = new GroupLayout(contentPane);
gl_contentPane.setHorizontalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addComponent(btnPanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addGap(18)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addComponent(txtVal, GroupLayout.PREFERRED_SIZE, 64, GroupLayout.PREFERRED_SIZE)
.addGroup(gl_contentPane.createSequentialGroup()
.addComponent(infoBtn, GroupLayout.PREFERRED_SIZE, 24, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(docBtn, GroupLayout.PREFERRED_SIZE, 24, GroupLayout.PREFERRED_SIZE)))
.addGap(31)
.addComponent(txtExtra, GroupLayout.DEFAULT_SIZE, 623, Short.MAX_VALUE)
.addPreferredGap(ComponentPlacement.RELATED))
.addComponent(picPanel, GroupLayout.PREFERRED_SIZE, 720, GroupLayout.PREFERRED_SIZE)
.addComponent(valPanel, Alignment.TRAILING, GroupLayout.PREFERRED_SIZE, 720, GroupLayout.PREFERRED_SIZE))
.addGap(8))
);
gl_contentPane.setVerticalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addContainerGap()
.addComponent(picPanel, GroupLayout.PREFERRED_SIZE, 210, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(valPanel, GroupLayout.PREFERRED_SIZE, 23, GroupLayout.PREFERRED_SIZE)
.addGap(13)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addComponent(txtVal, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addComponent(docBtn, GroupLayout.PREFERRED_SIZE, 24, GroupLayout.PREFERRED_SIZE)
.addComponent(infoBtn, GroupLayout.PREFERRED_SIZE, 24, GroupLayout.PREFERRED_SIZE)))
.addComponent(txtExtra, GroupLayout.PREFERRED_SIZE, 80, GroupLayout.PREFERRED_SIZE)))
.addComponent(btnPanel, GroupLayout.PREFERRED_SIZE, 370, GroupLayout.PREFERRED_SIZE))
.addContainerGap(61, Short.MAX_VALUE))
);
valPanel.setLayout(new GridLayout(0, 16, 0, 0));
JButton cBtn1 = new JButton("");
cBtn1.setToolTipText("Bit-Wert \u00E4ndern");
cBtn1.setIcon(changeIco);
valPanel.add(cBtn1);
cBtn1.addActionListener(new ActionListener() { //Bitänderungs-Button1
@Override
public void actionPerformed(ActionEvent e) {
if(lblVal1.getText()=="1"){
lblVal1.setText("0");
bitVal.add(0, 0);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(0, '0');
txtVal.setText(sb.toString());
}else{
lblVal1.setText("1");
bitVal.add(0,1);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(0, '1');
txtVal.setText(sb.toString());
}
}
});
lblVal1 = new JLabel("0");
lblVal1.setFont(new Font("Tahoma", Font.BOLD, 11));
lblVal1.setHorizontalAlignment(SwingConstants.CENTER);
valPanel.add(lblVal1);
JButton cBtn2 = new JButton("");
cBtn2.setToolTipText("Bit-Wert \u00E4ndern");
cBtn2.setIcon(changeIco);
valPanel.add(cBtn2);
cBtn2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) { //Bitänderungs-Button2
if(lblVal2.getText()=="1"){
lblVal2.setText("0");
bitVal.add(1, 0);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(1, '0');
txtVal.setText(sb.toString());
}else{
lblVal2.setText("1");
bitVal.add(1,1);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(1, '1');
txtVal.setText(sb.toString());
}
}
});
lblVal2 = new JLabel("0");
lblVal2.setFont(new Font("Tahoma", Font.BOLD, 11));
lblVal2.setHorizontalAlignment(SwingConstants.CENTER);
valPanel.add(lblVal2);
JButton cBtn3 = new JButton("");
cBtn3.setToolTipText("Bit-Wert \u00E4ndern");
cBtn3.setIcon(changeIco);
valPanel.add(cBtn3);
cBtn3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) { //Bitänderungs-Button3
if(lblVal3.getText()=="1"){
lblVal3.setText("0");
bitVal.add(2, 0);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(2, '0');
txtVal.setText(sb.toString());
}else{
lblVal3.setText("1");
bitVal.add(2,1);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(2, '1');
txtVal.setText(sb.toString());
}
}
});
lblVal3 = new JLabel("0");
lblVal3.setFont(new Font("Tahoma", Font.BOLD, 11));
lblVal3.setHorizontalAlignment(SwingConstants.CENTER);
valPanel.add(lblVal3);
JButton cBtn4 = new JButton("");
cBtn4.setToolTipText("Bit-Wert \u00E4ndern");
cBtn4.setIcon(changeIco);
valPanel.add(cBtn4);
cBtn4.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) { //Bitänderungs-Button4
if(lblVal4.getText()=="1"){
lblVal4.setText("0");
bitVal.add(3, 0);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(3, '0');
txtVal.setText(sb.toString());
}else{
lblVal4.setText("1");
bitVal.add(3,1);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(3, '1');
txtVal.setText(sb.toString());
}
}
});
lblVal4 = new JLabel("0");
lblVal4.setFont(new Font("Tahoma", Font.BOLD, 11));
lblVal4.setHorizontalAlignment(SwingConstants.CENTER);
valPanel.add(lblVal4);
JButton cBtn5 = new JButton("");
cBtn5.setToolTipText("Bit-Wert \u00E4ndern");
cBtn5.setIcon(changeIco);
valPanel.add(cBtn5);
cBtn5.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) { //Bitänderungs-Button5
if(lblVal5.getText()=="1"){
lblVal5.setText("0");
bitVal.add(4, 0);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(4, '0');
txtVal.setText(sb.toString());
}else{
lblVal5.setText("1");
bitVal.add(4,1);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(4, '1');
txtVal.setText(sb.toString());
}
}
});
lblVal5 = new JLabel("0");
lblVal5.setFont(new Font("Tahoma", Font.BOLD, 11));
lblVal5.setHorizontalAlignment(SwingConstants.CENTER);
valPanel.add(lblVal5);
JButton cBtn6 = new JButton("");
cBtn6.setToolTipText("Bit-Wert \u00E4ndern");
cBtn6.setIcon(changeIco);
valPanel.add(cBtn6);
cBtn6.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) { //Bitänderungs-Button6
if(lblVal6.getText()=="1"){
lblVal6.setText("0");
bitVal.add(5, 0);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(5, '0');
txtVal.setText(sb.toString());
}else{
lblVal6.setText("1");
bitVal.add(5,1);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(5, '1');
txtVal.setText(sb.toString());
}
}
});
lblVal6 = new JLabel("0");
lblVal6.setFont(new Font("Tahoma", Font.BOLD, 11));
lblVal6.setHorizontalAlignment(SwingConstants.CENTER);
valPanel.add(lblVal6);
JButton cBtn7 = new JButton("");
cBtn7.setToolTipText("Bit-Wert \u00E4ndern");
cBtn7.setIcon(changeIco);
valPanel.add(cBtn7);
cBtn7.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) { //Bitänderungs-Button7
if(lblVal7.getText()=="1"){
lblVal7.setText("0");
bitVal.add(6, 0);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(6, '0');
txtVal.setText(sb.toString());
}else{
lblVal7.setText("1");
bitVal.add(6,1);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(6, '1');
txtVal.setText(sb.toString());
}
}
});
lblVal7 = new JLabel("0");
lblVal7.setFont(new Font("Tahoma", Font.BOLD, 11));
lblVal7.setHorizontalAlignment(SwingConstants.CENTER);
valPanel.add(lblVal7);
JButton cBtn8 = new JButton("");
cBtn8.setToolTipText("Bit-Wert \u00E4ndern");
cBtn8.setIcon(changeIco);
valPanel.add(cBtn8);
cBtn8.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) { //Bitänderungs-Button8
if(lblVal8.getText()=="1"){
lblVal8.setText("0");
bitVal.add(7, 0);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(7, '0');
txtVal.setText(sb.toString());
}else{
lblVal8.setText("1");
bitVal.add(7,1);
StringBuilder sb=new StringBuilder(txtVal.getText());
sb.setCharAt(7, '1');
txtVal.setText(sb.toString());
}
}
});
lblVal8 = new JLabel("0");
lblVal8.setFont(new Font("Tahoma", Font.BOLD, 11));
lblVal8.setHorizontalAlignment(SwingConstants.CENTER);
valPanel.add(lblVal8);
picPanel.setLayout(new GridLayout(0, 8, 0, 0));
lbl1 = new JLabel("");
picPanel.add(lbl1);
lbl2 = new JLabel("");
picPanel.add(lbl2);
lbl3 = new JLabel("");
picPanel.add(lbl3);
lbl4 = new JLabel("");
picPanel.add(lbl4);
lbl5 = new JLabel("");
picPanel.add(lbl5);
lbl6 = new JLabel("");
picPanel.add(lbl6);
lbl7 = new JLabel("");
picPanel.add(lbl7);
lbl8 = new JLabel("");
picPanel.add(lbl8);
btnPanel.setLayout(new GridLayout(10, 1, 0, 0));
JLabel lblNewLabel = new JLabel("\u00DCbertragungsarten");
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 15));
btnPanel.add(lblNewLabel);
JButton btn1 = new JButton("ASK");
btn1.setToolTipText("Amplitude Shift Keying");
btn1.setFont(new Font("Tahoma", Font.BOLD, 11));
btn1.setBackground(SystemColor.controlHighlight);
btnPanel.add(btn1);
btn1.addActionListener(new ActionListener() { //ASK-Darstellung
@Override
public void actionPerformed(ActionEvent e) {
for(int x=0;x<8;x++){
int i=bitVal.get(x);
picPanel.removeAll();
if(i==0){
JLabel l=new JLabel();
l.setIcon(askZero);
//------------------------------------------------------------------------------------------------
picPanel.add(l);//????????????????????????????????????????????????Warum Zeigt er mir das Label nicht an???????????????????????????????
//------------------------------------------------------------------------------------------------
x++;
}else{
}
}
}
});
JButton btn2 = new JButton("ASK On-Off-Keying ");
btn2.setToolTipText("Amplitude Shift Keying/\r\nOn-Off-Keying");
btn2.setFont(new Font("Tahoma", Font.BOLD, 11));
btn2.setBackground(SystemColor.controlHighlight);
btnPanel.add(btn2);
JButton btn3 = new JButton("FSK");
btn3.setToolTipText("Frequency Shift Keying");
btn3.setFont(new Font("Tahoma", Font.BOLD, 11));
btn3.setBackground(SystemColor.controlHighlight);
btnPanel.add(btn3);
JButton btn4 = new JButton("PSK");
btn4.setToolTipText("Phase Shift Keying");
btn4.setFont(new Font("Tahoma", Font.BOLD, 11));
btn4.setBackground(SystemColor.controlHighlight);
btnPanel.add(btn4);
JButton btn5 = new JButton("New button");
btn5.setFont(new Font("Tahoma", Font.BOLD, 11));
btn5.setBackground(SystemColor.controlHighlight);
btnPanel.add(btn5);
JButton btn6 = new JButton("New button");
btn6.setFont(new Font("Tahoma", Font.BOLD, 11));
btn6.setBackground(SystemColor.controlHighlight);
btnPanel.add(btn6);
JButton btn7 = new JButton("New button");
btn7.setFont(new Font("Tahoma", Font.BOLD, 11));
btn7.setBackground(SystemColor.controlHighlight);
btnPanel.add(btn7);
JButton btn8 = new JButton("New button");
btn8.setFont(new Font("Tahoma", Font.BOLD, 11));
btn8.setBackground(SystemColor.controlHighlight);
btnPanel.add(btn8);
JButton btn9 = new JButton("New button");
btn9.setBackground(UIManager.getColor("Button.light"));
btn9.setFont(new Font("Tahoma", Font.BOLD, 11));
btnPanel.add(btn9);
contentPane.setLayout(gl_contentPane);
}
public void txtValTObitVal(){ //<Bitwerte aus Textfeld erfassen>
bitVal.clear();
for(int i=0;i<8;i++){
if(txtVal.getText().charAt(i)!='0'&&txtVal.getText().charAt(i)!='1'){
errorMsg("Es kann nur '0' oder '1' eingegeben werden");
}
int temp=(int)txtVal.getText().charAt(i);
bitVal.add(temp);
}
lblVal1.setText(txtVal.getText().substring(0, 1));
lblVal2.setText(txtVal.getText().substring(1, 2));
lblVal3.setText(txtVal.getText().substring(2, 3));
lblVal4.setText(txtVal.getText().substring(3, 4));
lblVal5.setText(txtVal.getText().substring(4, 5));
lblVal6.setText(txtVal.getText().substring(5, 6));
lblVal7.setText(txtVal.getText().substring(6, 7));
lblVal8.setText(txtVal.getText().substring(7, 8));
} //</Bitwerte aus Textfeld erfassen>
public void errorMsg(String s){ //Standartfehlerausgabe
JOptionPane jo=new JOptionPane();
jo.showMessageDialog(null, s);
}
}
Zuletzt bearbeitet von einem Moderator: