В моем программном обеспечении я хочу показать сообщение «добро пожаловать» в joptionpane, когда приложение запускается 1-й раз в этой системе. Я не хочу этого сообщения в 2-й или более раз. Требуется только один раз, когда приложение запускается 1 раз в этой системе с использованием netbeans.Как показать диалоговое окно программного обеспечения, использующего java при первом запуске программного обеспечения в этой системе
ответ
Это probaby хороший случай использования для Preferences:
Preferences prefs = Preferences.userNodeForPackage(getClass());
boolean hasRunBefore = prefs.getBoolean("hasRunBefore", false);
if (!hasRunBefore) {
prefs.putBoolean("hasRunBefore", true);
JOptionPane.showMessageDialog(mainWindow,
"Welcome to ExampleApp!", "Welcome",
JOptionPane.INFORMATION_MESSAGE,
applicationIcon);
}
Вы можете создать файл где-нибудь в системе (например, в домашней директории пользователя), только создайте этот файл, если он не существует.
File file = new File(System.getProperty("user.dir") +"/.launch_first_time");
if(!file.exist()) {
file.createNewFile();
JOptionPane.showMessageDialog (null, "welcome", "Launch for the first time", JOptionPane.INFORMATION_MESSAGE);
}
Вы можете запустить этот код каждый раз при открытии приложения с помощью WindowsListener
Мне потребовалось всего одно время не требуется еще 2 раза при запуске приложения. – user5876281
Я обнаружил 2 ошибки в вашем коде. 1. isExist() не в netbeans, а есть Exists(). – user5876281
Вторая ошибка не показывает это диалоговое окно при запуске приложения. и он явно не работает. Проверьте и обновите код. thank u – user5876281
Вы можете использовать файл, позволяет сказать settings.conf , в котором у вас может быть свойство show.splash.screen = 0. В вашем приложении сначала вы проверяете это свойство, если есть 0, вы показываете заставку и обновляете свойство в файле show.splash.screen = 1. В следующий раз когда ваши приложения запустится, экран заставки не отобразится. –
Это не в Android, которое используется для настольных приложений. – user5876281
Я пробовал так много веб-сайта, чтобы проверить код, но я не мог видеть никаких кодов. – user5876281