Мне было интересно, как добавить JLabel
в правый нижний угол этого JFrame
? Я также довольно новичок в кодировании, поэтому я буду воспринимать это как опыт обучения. :)
public class MainQuestions {
public static void main (String args[]){
JFrame frame=new JFrame();
Object ARRAY[]={"French","English","Portugese","Spanish"};
String answer=(String)JOptionPane.showInputDialog(frame, "What language predominately spoken in Latin American countries?","World Geography Review", JOptionPane.PLAIN_MESSAGE, null, ARRAY, null);
if(answer == null) {
//System.exit(0);
} else if(answer.equals("Spanish")) {
JOptionPane.showMessageDialog(null, "Correct!", "World Geography Review", JOptionPane.PLAIN_MESSAGE,null);
//System.exit(0);
} else {
JOptionPane.showMessageDialog(null, "Sorry, wrong answer.", "World Geography Review", JOptionPane.PLAIN_MESSAGE,null);
//System.exit(0);
}
}
}
Я сделал вам пример, используя BorderLayout
public class Test {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
private static void createAndShowGUI() {
JFrame f = new JFrame("Test label");
f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JLabel label = new JLabel("Test");
//this set component orientation to the right!
label.setHorizontalAlignment(JLabel.TRAILING);
f.add(label,BorderLayout.SOUTH);
f.setLocationByPlatform(true);
f.pack();
f.setVisible(true);
}
}
Вывод:
Для получения дополнительной информации о swing начните чтение этих руководств
Что-то вроде этого должно работать. Спросите меня, есть ли у вас проблемы :)
setLayout(new BorderLayout());
JPanel labelPanel = new JPanel();
labelPanel.setLayout(new FlowLayout(FlowLayout.RIGHT));
JLabel bottomRtLabel = new JLabel("BOTTOM RIGHT LABEL");
labelPanel.add(bottomRtLabel);
frame.add(labelPanel,BorderLayout.SOUTH);
вот несколько довольно маленьких примеров, которые помогут вам понять это:
public class Example extends JFrame {
public Example() {
setLayout(new BorderLayout());
add(new JButton("Button"), BorderLayout.PAGE_START);
add(new JLabel("Label"), BorderLayout.PAGE_END);
setSize(800, 600);
setVisible(true);
}
public static void main(String[] args) {
new Example();
}
}