This Tutorial is all about Avoid Closing the Form in Java.
This tutorial entitled “Avoid Closing the Form in Java” will teach you on how to setup a Form in Java that restrict on closing event.
The program will restrict the default close operation and avoid the user to close the form.
The program also uses the “window event” to detect the user operation. When the user click the close icon of the form located in the upper right part of the form together with the minimize and maximize icon, a dialog box appear and displaying a text “You cannot close this main form!”.
The program uses “JOption Pane” to display a dialog box.
Avoid Closing the Form in Java Steps
Create or add a new form inside your Java source package. Just name the form what you want it to name.

Design your form just look like the image below. In my case, I inserted a Label with a text “YOU CANNOT CLOSE THIS FORM”.

Insert the following codes below inside your “public method”. In Netbeans, the default public method handle the entire form constructor and call the constructor using the method name “initComponents”.
this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent we)
{String ObjButtons[] = {"yes","no"};
int PromptResult = JOptionPane.showConfirmDialog(null, "You cannot close this main form!","Confirmation",JOptionPane.PLAIN_MESSAGE);
if (PromptResult == JOptionPane.CLOSED_OPTION)
{System.exit(0);
}
}
});
Run your program and the output should look like the image below.


There are two output displays in the image above; the first image is the display of the actual form when the program is running.
The second image display the dialog box displaying the text “You cannot close this main form!”. Remember that the dialog box will appear when the user clicks the close button.
About The Avoid Closing the Form In Java
<figure class="wp-block-table is-style-stripes">
<table>
<tbody>
<tr>
<td><strong>Project Name:</strong></td>
<td>Avoid Closing the Form</td>
</tr>
<tr>
<td><strong>Language/s Used:</strong></td>
<td>JAVA</td>
</tr>
<tr>
<td><strong>Database:</strong></td>
<td>None</td>
</tr>
<tr>
<td><strong>Type:</strong></td>
<td>Desktop Application</td>
</tr>
<tr>
<td><strong>Developer:</strong></td>
<td>IT SOURCECODE</td>
</tr>
<tr>
<td><strong>Updates:</strong></td>
<td>0</td>
</tr>
</tbody>
</table><figcaption><em><strong>Avoid Closing the Form In Java</strong>- Project Information</em></figcaption></figure>These features are equipped in some programs especially in the main form part. This feature will forced the user to exit the program using the special logout button so that the program can track all the in and out of the user while using the program.
If you have comments and suggestions regarding on this tutorial, feel free to contact us.
Related Articles You May Like:
- Display Data from Selected Table Row to another Form in Java
- Create a Login Form in Java
- How to Use Progress Bar in Java
- Load Image from Path to JLabel in Java
- How to Play MP3 Music in Java
Frequently Asked Questions
How does this Java project work?
Built with Java Swing (NetBeans IDE) and MySQL backend via JDBC. Standard structure: JFrame designer to event handlers to DAO layer to MySQL. Login form for auth. Ready to extend for BSIT capstone scope.
What Java JDK and MySQL versions does this project require?
Most projects in this batch use Java JDK 8 or 11 with MySQL 5.7+ or MariaDB 10+. To run: install JDK (Adoptium / Oracle), install MySQL Server + MySQL Workbench, install NetBeans IDE (15+ supports modern JDK), open the project (.zip extracted folder), right-click + Open Project, add MySQL JDBC driver to Project Libraries, run.
How do I set up the database for this Java project?
Open MySQL Workbench (or phpMyAdmin if you have XAMPP), create a new empty database with the name specified in the project. Import the included .sql file via Server, Data Import in Workbench (or Import tab in phpMyAdmin). Update the connection class (usually DBConnection.java or DatabaseConnection.java) with your MySQL host, port, username, password, and database name.
Can I use this Java project for a BSIT capstone or thesis?
Yes, Java is one of the most accepted languages by Philippine BSIT panels. Extend it: add role-based access (admin/staff/customer login redirect), JasperReports printable reports, dashboards with JFreeChart, audit log, multi-branch support. Pair with Chapter 1-5 documentation matching your panel’s rubric.
Why am I getting ‘ClassNotFoundException: com.mysql.jdbc.Driver’ or ‘No suitable driver’?
Three common Java JDBC issues: (1) MySQL JDBC driver JAR not added to project Libraries. Right-click Project, Properties, Libraries, Add JAR/Folder, select mysql-connector-java-X.X.X.jar. (2) Wrong driver class name. Modern (8.0+) uses com.mysql.cj.jdbc.Driver, legacy (5.x) uses com.mysql.jdbc.Driver. (3) Connection URL missing serverTimezone parameter, add ?serverTimezone=UTC to the URL.
Where can I find more Java projects with source code?
Browse the Java Projects hub for the full library (120+ Java desktop systems). For modern Java web alternatives consider Spring Boot. For other desktop stacks see VB.NET Projects or C# Projects. For BSIT capstone idea lists see 150 Best Capstone Project Ideas.