JFrame frame = new JFrame("FrameDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(new Label("TEST"), BorderLayout.CENTER);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.pack();
frame.setVisible(true);
JFrame frame = new JFrame("FrameDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(new Label("TEST"), BorderLayout.CENTER);
// frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
Toolkit tk = Toolkit.getDefaultToolkit();
int xSize = ((int) tk.getScreenSize().getWidth());
int ySize = ((int) tk.getScreenSize().getHeight());
System.out.println(xSize);
frame.setPreferredSize(new Dimension(xSize, ySize));
frame.pack();
frame.setVisible(true);
frame = new JFrame();
frame.getContentPane().setBackground(Color.LIGHT_GRAY);
frame.getContentPane().setForeground(Color.WHITE);
frame.setBounds(550, 210, 634, 503);
frame.setUndecorated(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
frame.setVisible(true);
Mein Code JFrame Code
Code:frame = new JFrame(); frame.getContentPane().setBackground(Color.LIGHT_GRAY); frame.getContentPane().setForeground(Color.WHITE); frame.setBounds(550, 210, 634, 503); frame.setUndecorated(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(null); frame.setVisible(true);
Habe das soweit eingefügt dein Vorschlag, aber es ist immer noch oben Links klein gerendert. Es kommt zwar im Vollbild aber wie gesagt nur oben rechts!
frame = new JFrame();
frame.getContentPane().setBackground(Color.LIGHT_GRAY);
frame.getContentPane().setForeground(Color.WHITE);
frame.setBounds(550, 210, 634, 503);
frame.setUndecorated(true);
frame.getContentPane().add(new Label("TEST"), BorderLayout.CENTER);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Startansicht window = new Startansicht();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public Startansicht() {
initialize();
}
private void initialize() {
frame = new JFrame();
frame.getContentPane().setBackground(Color.LIGHT_GRAY);
frame.getContentPane().setForeground(Color.WHITE);
frame.setBounds(550, 210, 634, 503);
frame.setUndecorated(true);
frame.getContentPane().add(new Label("TEST"), BorderLayout.CENTER);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
textField_1 = new JPasswordField();
textField_1.setBounds(306, 216, 280, 32);
textField_1.setOpaque(false);
textField_1.setBorder(javax.swing.BorderFactory.createEmptyBorder());
frame.getContentPane().add(textField_1);
textField_1.setColumns(10);
textField = new JTextField();
textField.setColumns(10);
textField.setOpaque(false);
textField.setBorder(javax.swing.BorderFactory.createEmptyBorder());
textField.setBounds(306, 113, 280, 32);
frame.getContentPane().add(textField);
JLabel lblNewLabel = new JLabel("");
lblNewLabel.setIcon(new ImageIcon("C:\\Users\\Fabio\\Desktop\\GUIII.png"));
lblNewLabel.setBounds(0, 0, 279, 503);
frame.getContentPane().add(lblNewLabel);
JLabel lblNewLabel_1 = new JLabel("X");
lblNewLabel_1.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
System.exit(0);
}
});
lblNewLabel_1.setForeground(Color.RED);
lblNewLabel_1.setFont(new Font("Tahoma", Font.PLAIN, 18));
lblNewLabel_1.setBounds(616, 0, 18, 22);
frame.getContentPane().add(lblNewLabel_1);
JButton btnNewButton = new JButton("Einloggen");
btnNewButton.setBackground(SystemColor.textHighlight);
btnNewButton.setForeground(new Color(47, 79, 79));
btnNewButton.setBounds(300, 350, 105, 37);
frame.getContentPane().add(btnNewButton);
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
if(textField_1.getText().isEmpty() == true && textField.getText().isEmpty() == true) {
JOptionPane.showMessageDialog(frame,"Bitte geben Sie Ihren Spielernamen und Ihr Passwort ein!","Fehlende Eingabe", JOptionPane.WARNING_MESSAGE);
}
else if(textField_1.getText().isEmpty() == true) {
JOptionPane.showMessageDialog(frame,"Bitte geben Sie Ihr Passwort ein!","Fehlende Eingabe", JOptionPane.WARNING_MESSAGE);
}
else if(textField_1.getText().isEmpty() == true){
JOptionPane.showMessageDialog(frame,"Bitte geben Sie Ihren Spielernamen ein!","Fehlende Eingabe", JOptionPane.WARNING_MESSAGE);
}
else{
str = textField.getText();
new DesignNew();
frame.dispose();}
}});
JButton btnRegistrieren = new JButton("Registrieren");
btnRegistrieren.setForeground(new Color(178, 34, 34));
btnRegistrieren.setBackground(SystemColor.textHighlight);
btnRegistrieren.setBounds(434, 350, 105, 37);
frame.getContentPane().add(btnRegistrieren);
btnRegistrieren.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
frame.dispose();
}
});
JLabel lblAlsGastFortfahren = new JLabel("Als Gast fortfahren...");
lblAlsGastFortfahren.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
frame.dispose();
}
});
lblAlsGastFortfahren.setFont(new Font("Tahoma", Font.BOLD, 11));
lblAlsGastFortfahren.setForeground(Color.BLUE);
lblAlsGastFortfahren.setBounds(368, 419, 119, 14);
frame.getContentPane().add(lblAlsGastFortfahren);
JLabel lblSpielername = new JLabel("SPIELERNAME");
lblSpielername.setBounds(300, 92, 105, 14);
frame.getContentPane().add(lblSpielername);
JLabel lblPasswort = new JLabel("PASSWORT");
lblPasswort.setBounds(300, 191, 105, 14);
frame.getContentPane().add(lblPasswort);
JLabel ZiehLabel = new JLabel();
ZiehLabel.setBackground(SystemColor.control);
ZiehLabel.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
pX = e.getX();
pY = e.getY();
}
});
ZiehLabel.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseDragged(MouseEvent e) {
frame.setLocation(frame.getLocation().x + e.getX() - pX,
frame.getLocation().y + e.getY() - pY);
}
});
ZiehLabel.setBounds(0, 0, 634, 503);
frame.getContentPane().add(ZiehLabel);
JSeparator separator = new JSeparator();
separator.setForeground(new Color(255, 255, 255));
separator.setBackground(new Color(255, 255, 255));
separator.setBounds(300, 143, 290, 2);
frame.getContentPane().add(separator);
JSeparator separator_1 = new JSeparator();
separator_1.setForeground(Color.WHITE);
separator_1.setBackground(Color.WHITE);
separator_1.setBounds(300, 246, 290, 2);
frame.getContentPane().add(separator_1);
frame.setVisible(true);
}
// 616 ist Horizontal
// 0 ist Vertical
lblNewLabel_1.setBounds(616, 0, 18, 22);
// Bei einer Auflösung von 1920x1080 müsste dann was stehen?
Also du verwendest kein Layout und das solltest du ändern:
https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html
Du fügst alle Komponenten dem JFrame hinzu, besser du fügst es ein JPanel hinzu, und diesem dann dem JFrame.
Und wenn du kein Layout haben willst, dann müssen die setBounds natürlich korrekt sein.
Also Beispiel:
Java:// 616 ist Horizontal // 0 ist Vertical lblNewLabel_1.setBounds(616, 0, 18, 22); // Bei einer Auflösung von 1920x1080 müsste dann was stehen?
EDIT: Du könntest natürlich Code verwendet den ich als Beispiel hier gepostet habe.
Also müsste ich es immer bei setBounds manuell anpassen?
Ich kann dir da nicht richtig folgen.Nein müsstest du nicht, aber anhand der Auflösung müsste für jedes Element die richtige Position gesetzt sein.
Verwenden kannst du z. B Toolkit.getDefaultToolkit().
Ich nehme mal an das Kreuz soll oben rechts sein? Bei einer Auflösung von 1920X1080 müsste dann setBounds(width-20, 0, 18, 22) lauten.
Usw.
frame = new JFrame();
frame.getContentPane().setBackground(Color.LIGHT_GRAY);
frame.getContentPane().setForeground(Color.WHITE);
frame.setBounds(20, 0, 18, 22);
frame.setUndecorated(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
Toolkit tk = Toolkit.getDefaultToolkit();
int xSize = ((int) tk.getScreenSize().getWidth());
int ySize = ((int) tk.getScreenSize().getHeight());
.....
// Bei einer Auflösung von 1920 x 1080 wäre dann xSize 1900
lblNewLabel_1.setBounds(xSize - 20, 0, 18, 22);