Java GUI Builder
13th September 2002
One of the things I really like about PythonCard is that it enables (and in fact actively encourages) you to completely separate the GUi of your application from the program logic. In PythonCard you design your GUI by adding and dragging elements around in the resource editor, then create a simple Python class with event handlers to define what should happen when your GUI is interacted with. Now, thanks to the Java GUI Builder (spotted on Small Values of Cool), you can do the same thing in Java.
The GUI builder allows you to define your user interface in an XML file, which is then interpreted by Java at run-time. This allows you to make changes to the interface without recompiling the program (or editing any Java code), and also gives users the ability to edit their interface without needing to alter your code. It’s a very clever piece of code.
XML seems to be a popular choice for defining GUI’s these days—Mozilla has XUL, XWT allows developers to write web based GUI applications with XML and now the Java GUI Builder takes this trend a step further. It seems like a logical progression—after all, GUIs are basically collections of nested components and XML fits that kind of situation like a glove.
More recent articles
- Weeknotes: Llama 3, AI for Data Journalism, llm-evals and datasette-secrets - 23rd April 2024
- Options for accessing Llama 3 from the terminal using LLM - 22nd April 2024
- AI for Data Journalism: demonstrating what we can do with this stuff right now - 17th April 2024
- Three major LLM releases in 24 hours (plus weeknotes) - 10th April 2024
- Building files-to-prompt entirely using Claude 3 Opus - 8th April 2024
- Running OCR against PDFs and images directly in your browser - 30th March 2024
- llm cmd undo last git commit - a new plugin for LLM - 26th March 2024
- Building and testing C extensions for SQLite with ChatGPT Code Interpreter - 23rd March 2024
- Claude and ChatGPT for ad-hoc sidequests - 22nd March 2024
- Weeknotes: the aftermath of NICAR - 16th March 2024