@Black007: poczytałem o UIManager
, w JOptionPane
sobie spersonalizowałem czcionkę ale nie mogę zmienić nazw etykiet w JFileChooser
robię to tak w atrybutach klasy definiuję
private JFileChooser fileChooser = new JFileChooser();
w konstruktorze tej klasy robię to
UIManager.put("FileChooser.saveButtonText","Zapisz");
UIManager.put("FileChooser.openButtonText","Otwórz");
UIManager.put("FileChooser.cancelButtonText","Anuluj");
UIManager.put("FileChooser.updateButtonText","Uaktualnij");
UIManager.put("FileChooser.helpButtonText","Pomoc");
UIManager.put("FileChooser.saveButtonToolTipText","Zapisz");
UIManager.put("FileChooser.openButtonToolTipText","Otwórz");
UIManager.put("FileChooser.cancelButtonToolTipText","Anuluj");
UIManager.put("FileChooser.updateButtonToolTipText","Uaktualnij");
UIManager.put("FileChooser.helpButtonToolTipText","Pomoc");
fileChooser.setDialogTitle("Zapis");
FileFilter pdfFilter =new FileNameExtensionFilter("Pliki *.pdf","pdf");
fileChooser.addChoosableFileFilter(pdfFilter);
fileChooser.setFileFilter(pdfFilter);
fileChooser.setAcceptAllFileFilterUsed(false);
Po kliknięciu w przycisk mam
userSelection = fileChooser.showSaveDialog(this);
if(e.getSource()==print){
if (userSelection == JFileChooser.APPROVE_OPTION) {
File fileToSave = fileChooser.getSelectedFile();
System.out.println("Save as file: " + fileToSave.getAbsolutePath());
}
}
Nie wiem czemu to nie działa
EDIT:
działa jak ten kod z UIManager
dodam do głównej metody
public static void main(String args[]){
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException
| UnsupportedLookAndFeelException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
UIManager.put("FileChooser.saveInLabelText", "Zapisz w ");
UIManager.put("FileChooser.saveButtonText","Zapisz");
UIManager.put("FileChooser.openButtonText","Otwórz");
UIManager.put("FileChooser.cancelButtonText","Anuluj");
UIManager.put("FileChooser.updateButtonText","Uaktualnij");
UIManager.put("FileChooser.helpButtonText","Pomoc");
UIManager.put("FileChooser.saveButtonToolTipText","Zapisz");
UIManager.put("FileChooser.openButtonToolTipText","Otwórz");
UIManager.put("FileChooser.cancelButtonToolTipText","Anuluj");
UIManager.put("FileChooser.updateButtonToolTipText","Uaktualnij");
UIManager.put("FileChooser.helpButtonToolTipText","Pomoc");
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new MyFrame();
}
});
}
Czytałem że należy UImanager
dodawać do pierwszych linijek konstruktora klasy w której mają być używane