имам JFileChooser
като този:
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if(fileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
//do something
}
И сега искам да определя минималния / максималния му размер, защото изглежда лошо, ако намалим размера, иначе (Това не е дори възможно най-малкия размер):
Не можех да замразя размера на JFileChooser
ако потребителят иска да го направи по-малък, отколкото например това ?:
Опитах това: fileChooser.setMinimumSize(new Dimensio(400, 400));
, но тя не работи.
И мисля, че не изглежда добре, ако размерът "скача" назад, когато потребителят прави прозореца по-малък, отколкото например 600p * 600p
.
Отговори:
3 за отговор № 1Можете да подкласвате JFileChooser и да персонализирате диалога в него createDialog метод:
JFileChooser fileChooser = new JFileChooser() {
private static final long serialVersionUID = 1;
@Override
public JDialog createDialog(Component parent) {
JDialog dialog = super.createDialog(parent);
dialog.setMinimumSize(new Dimension(600, 600));
return dialog;
}
};
Това обаче няма да спечелите много. Други потребители ще имат различни теми за работния плот и различни шрифтове от вас. 600 × 600 пиксела може да изглежда добре на вашия компютър, но няма гаранция, че ще бъде добър минимален размер за другите. Най-добре е просто да приемете, че потребителите могат да направят прозорец необичайно малък, ако наистина искат.