Я использую Java Swing для создания JDialog, и я пытаюсь создать кнопку Show/Hide details, чтобы показать/скрыть отчет в нижней части этого JDialog.Как создать кнопку Show/Hide details?
Он отлично работает для меня, но я хочу сделать это со временем, чтобы добавить небольшой эффект анимации, показывая/скрывая отчет, я использовал TimerTask, но он просто показывает отчет напрямую без какого-либо замедленного движения ... Вот мой текущий код:
private void showHideDetailsButtonActionPerformed() {
final MyDialog myDialog = this;
int fullHeight = this.getHeight();
int smallHeight = this.getHeight()/2 - 4;
this.setSize(this.getWidth(), smallHeight); // By default hide the report.
if(this.getHeight() == smallHeight) { // Show details.
new Timer().schedule(
new java.util.TimerTask() {
@Override
public void run() {
while(myDialog.getHeight() < fullHeight) {
myDialog.setSize(myDialog.getWidth(), myDialog.getHeight() + 1);
System.out.println(myDialog.getHeight());
}
}
},
800
);
}
}
Perfect ... javax.swing.Timer настолько прост и выполняет эту работу. – Brad