forked from AdvancedProgramming1404/WS-06-intro-to-javafx
54f96e8fb90be566b43fd3186b1b4e1a71e9f7ea
JavaFX Workshop — Pricing Plans UI
Introduction
Ready to dip your toes into the world of JavaFX? In this workshop, you'll build a pricing plans page — the kind you see on every modern SaaS website (a simple version of them!).
What You'll Learn
| Concept | How you'll use it |
|---|---|
| JavaFX + Maven | Setting up the project structure |
| FXML | Designing layouts without hardcoding |
| Controllers | Connecting UI to Java logic |
| Event Handling | Making buttons actually do something |
| CSS Styling | Making it look good (dark mode included!) |
| Dialogs | Showing payment alerts |
Your TODO List
Install VS Code extension for better JavaFx CSS Support
- There is an extension for better JavaFx CSS support in vscode-extension folder
- You can install that with this command on your IntelliJ terminal:
code --install-extension "vscode-extension\css-helper-for-javafx-1.0.1.vsix"
- (Optional) Also after that open your VS Code press
CTRL+SHIFT+P, enteruser settings, open settings.json and finally add this line there:
"css.lint.vendorPrefix": "ignore",
Main.java
- Load the FXML file using
FXMLLoader - Create a
Scene, set its title, attach CSS file to it, and show it on theStage
Controller.java
- Wire up the "Shop" buttons → show payment alerts
- Implement theme toggle (Dark ↔ Light)
Learning Goals
By working through this workshop, you'll be able to:
- Understand the structure of a JavaFX Maven project
- Read and write basic FXML layouts
- Connect your visual design (FXML) to Java code (Controllers)
- Handle UI events with
@FXMLmethods - Switch CSS themes dynamically
- Create and show JavaFX dialogs
Notes
Always run your Javafx app from the Launcher.java, Launching from the Main.class (where you have extended from Jfx Application) sometimes doesn't work due to building issues, and you get error of not finding Javafx.
Don't forget to set your jdk in the Project Structure > SDK !
Languages
CSS
55.4%
Java
44.6%