Cześć uczę się z książki co jakiś czas pisze się w niej jakieś proste programiki. Ale z reguły zanim zajrzę jak wygląda kod zapisany w książce próbuje napisać go sam. Odkryłem coś czego nie ma w książce i nie rozumiem dlaczego tak się dzieje. Jeśli włączycie ten program to wszystko będzie ładnie wyśrodkowane ( Etykiety Pola tekstowe i guzik ) ale wystarczy tylko usunąć linijkę tekst2.setFont(czcionkaD); w której ustawiam czcionkę dla pol tekstowych i cale wyśrodkowanie się rozjeżdża. Dlaczego tak się dzieje?
package javaapplication19;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Font;
import javax.swing.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
/**
*
* @author JRS
*/
public class quizEdytor {
JFrame mainFrame;
ArrayList <kartaQuizowa> listaKart;
JTextArea tekst;
JTextArea tekst2;
public void gui(){
mainFrame = new JFrame("Quiz Edytor");
JPanel panel = new JPanel();
JLabel pyt = new JLabel("Pytanie:");
JLabel odp = new JLabel("Odpowiedz:");
tekst = new JTextArea(6,20);
tekst2 = new JTextArea(6,20);
Font czcionkaD= new Font("sanserif",Font.BOLD,24);
tekst.setLineWrap(true);
tekst.setWrapStyleWord(true);
tekst.setFont(czcionkaD);
tekst2.setLineWrap(true);
tekst2.setWrapStyleWord(true);
tekst2.setFont(czcionkaD);
JMenuBar menuGlowne = new JMenuBar();
JMenu plik = new JMenu("Plik");
JMenuItem nowy = new JMenuItem("Nowa Karta");
JMenuItem zapisz = new JMenuItem("Zapisz Karte");
plik.add(nowy);
plik.add(zapisz);
menuGlowne.add(plik);
JButton button = new JButton("Nastepna Karta");
button.addActionListener(new nastepnaKartaListener());
JScrollPane rolka = new JScrollPane(tekst);
rolka.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
rolka.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
JScrollPane rolka2 = new JScrollPane(tekst2);
rolka2.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
rolka2.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
panel.add(pyt);
panel.add(rolka);
panel.add(odp);
panel.add(rolka2);
panel.add(button);
mainFrame.setJMenuBar(menuGlowne);
mainFrame.getContentPane().add(BorderLayout.CENTER,panel);
mainFrame.setSize(500,600);
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainFrame.setVisible(true);
}
class nastepnaKartaListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent ae) {
}
}
class kartaQuizowa {
kartaQuizowa(JTextArea p, JTextArea o){
tekst=p;
tekst2=o;
}
public JTextArea getPytanie(){
return tekst;
}
public JTextArea getOdp(){
return tekst2;
}
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
quizEdytor start = new quizEdytor();
start.gui();
// TODO code application logic here
}
}