Best GUI Builder for Java/Swing [closed] - java

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Any good recent (Java 6+) Swing GUI builders the SO community would like to recommend? Some features I'm interested in:
Open source - great if its open but not hard requirement
Null layout managers - allow me to drag-n-drop controls where I want them
Custom controls
Design/Code split view or the ability to toggle back and forth
Thanks for any suggestions!

Netbeans is the best there is for Swing and will cover everything you need:
free,
open source,
null layout available, if you must use it... :-) ,
drag-n-drop,
custom controls you can drag-n-drop too,
great flexibility with files and projects and
refactoring.
They offer the best integration of Matisse Swing builder.
It is absolutely stable, expandable and fast.
There is a large number of plugins.
Hibernate reverse engineering is well implemented and there is a vast number of step-by-step tutorials that will help you start.

I personally use WindowBuilder Pro by Google. It is a plugin for Eclipse and it is free.
The next release of Eclipse - Indigo - will be on the 2nd of July and it will include WindowBuilder by default.
WindowBuilder is a powerful and easy
to use bi-directional Java GUI
designer that makes it very easy to
create Java GUI applications without
spending a lot of time writing code to
display simple forms. With
WindowBuilder you can create
complicated windows in minutes. Use
the visual designer and Java code will
be generated for you. You can easily
add controls using drag-and-drop, add
event handlers to your controls,
change various properties of controls
using a property editor,
internationalize your app and much
more.
Reference link: WindowBuilder Pro

I personally prefer to do everything by hand, it's more precise and avoid to get some generated code that is often ugly and dependant on a specific IDE.

NetBeans GUI builder is fine. You just need to save generated XML documents with GUI data, because it's not easy to edit the generated source code manually.

Related

What's the best Java framework for developing user interfaces? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I have to develop a desktop application using Java. I've some experience with Java Swing, but user interfaces developed using it are not so good looking...
I know that Eclipse is developed using another framework called SWT.
Is it as portable as Swing?
Is there some other framework to try and what is the experience using it?
Since it is very confortable using predefined objects and drag and drop them from a palette, and in most cases it is so hard to override basics methods, then you need to add another custom API for basic methods that are implemented by default in AWT/Swing,
All the Java custom frameworks are based on overriding methods that comes with AWT/Swing.
Use standard Swing JComponents and use a custom look and feel rather than bothering with private non overridable Objects implemented in the Java GUI frameworks. Then you can implement Java GUI with a nice look similar to modern WWW frameworks based on HTML5.
There are significant differences between SWT and Swing. It really depends on your application's needs. Back for your question, SWT is also portable like Swing, but for each platform you have to use a different library which uses the platform's native implementation.
Basically there are the two big and one minor player:
AWT/SWING
SWT
Beyond that there is QT-Jambi - which is quite new and not very common. (http://qt-jambi.org/)
SWT provides native libs for Win/Mac and behaves quite well. It also has nice tooling (see WindowBuilder)
Both the NetBeans platform (pure Swing, but good looking, and adaptable look&feel), and Eclipse RCP (SWT) do. I find Swing definitely better, but I am biased. Both require a large effort.
Swing is very powerful, but a bit complicated.
AWT - don't use it at all (Swing was designed to solve issues with AWT).
SWT is claimed to be faster than swing, although in modern versions Swing is also fast enough.
I would consider JavaFX as a next generation GUI framework for new projects as long as you have to stay in the Java camp. JavaFx is built with modern concepts in mind. But it's not widespread, and there are not a lot of projects written with this technology.

Netbeans 7 vs Eclipse 3.6 for Java, git and vim [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Both of them have a lot of features and are very popular, but which is better?
To reduce subjective answers, please answer this points:
Code Refactoring.
Unit testing, debugging.
Git support.
Vim support.(available plugins and their quality, eclim, jVi).
Easy of use(theme support, formatting, configuration, other plugins).
Maven and Ant support.
Web development(glassfish, groove, grails, spring).
Desktop app development.(swing, gwt, swt).
Mobile development(Android support and other platforms)
Game development(which engines have better support, for example Jmonkey uses Netbeans).
Bonus question: Support of other languages Python, PHP, C++ and.
For every point that IDE does well, you can give it +1, so in the end:
Netbeans 8
Eclipse 7
Conclusion: Which one is better overall and which you would choose for:
Desktop development.
Web development.
Additional question:
Which IDE is being used in major companies?(Google uses eclipse, Oracle use Netbeans)
Note, these are largely my personal opinions; don't take everything too literally.
Eclipse, NetBeans and also IntelliJ IDEA are all very good and capable IDEs. In the end, it doesn't really matter which one you choose; they are all more than good enough for serious professional software development for Java SE and Java EE. I've used all three.
IDEA was tradionally known as the IDE with the best refactoring tools, but the current versions of Eclipse and NetBeans also have very good refactoring tools.
IDEA has built-in Git support. Don't know about Eclipse and NetBeans.
NetBeans and IDEA have very good built-in Maven support. For Eclipse, you need a plug-in (for example m2eclipse) and in my experience it's not as well integrated as in NetBeans and IDEA.
When you get the Java EE package of NetBeans, you get a bundled Glassfish server with it, which is very easy to use. I'm sure that with Eclipse and IDEA you can configure them to use Glassfish too, but it's undoubtedly going to be a little more work to setup than with NetBeans.
NetBeans has a great Swing GUI builder. Eclipse doesn't have a built-in GUI builder, but you can get Google WindowBuilder Pro which supports Swing, SWT and GWT.
The official Android SDK etc. comes with a set of Eclipse tools. IDEA also has support for Android development, but I don't know how good it is.
Last time I tried, the support for other languages than Java (for example, JavaScript) was better in NetBeans than in Eclipse.
As far as I know, Eclipse is still the number one most used Java IDE, but NetBeans and IDEA are also very popular.
For Scala development, IDEA has the best support at the moment in my opinion. The Scala team is working on an Eclipse-based IDE for Scala, but in my experience it is less stable than IDEA's Scala support. For NetBeans, there is a Scala plug-in but only one person seems to be working on it; last time I used it, it was buggy, slow and had memory leaks.

Is there a 'best' Java RAD - for al Android/Linux/Windows? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
What's cross-platform for those, flexible, easy to develop and debug, and offers good cross-platform GUI development?
Good support for ODBC database is a plus and support for GIS database is a major plus.
Android does not use the same UI system as desktop Java. There is no common GUI tool amongst them.
As for Windows + Linux, both IntelliJ and NetBeans have a halfway decent Swing UI builder.
As mentioned by Yann, there are no cross-platform RAD system that cover both Android and Linux/Windows Java. Android is not really a Java-based platform; the Android SDK converts the Java bytecode to the more optimized Dalvik VM bytecode. For this reason, you may even find that even non-GUI java code does not "port" (I've run into a couple of such issues).
There exist some libraries that attempt to provide cross-platform access to the graphics layer such as libgdx, but none that will allow you to create "one-size fits all" GUI code easily. In general, though, you wouldn't want to do that either - the UI concepts are very different on a small touch screen and a large mouse-controlled desktop.
From a development point of view, any development environment that comfortably allows you to split the project into an Android project (for the Android stuff), a desktop Java project (for the desktop specific code), and a Java library project for the common functionality (keeping in mind the minor differences) that can be shared between both projects will do.
Currently only Eclipse provides a RAD environment for Android (as far as I know), but there is nothing to prevent you building the Android GUI part in Eclipse (importing the common code as a library) and doing the desktop project in a different environment if you prefer Netbeans or others for that.
Good and reasonably priced rad for android, basic language, native compile is Basic4Android google it, it was released a few weeks ago.
How about http://www.wavemaker.com/
and http://openxava.org/ ?
That comes quite close IMHO
and both are open source.

How to make industry standard desktop Java applications? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I know how to create the basic controls in Swing, but coming to industry standard application development, I lack the skills to do them.
I am designing a small Java Swing application. Instead of creating a JFrame for each purpose, I would like to create controls, display them, hide them (whenever necessary), everything in just one window.
How can I do it? I am a beginner. Please point me to nice web resources on the conventional ways of doing desktop Java applications using Swing.
I'm not sure where I read this (old article), but since I read it I use it in all commercial desktop applications I make.
First thing get NetBeans, it's the perfect IDE for Java UI design. The other Eclipse plugins are not as helpful nor powerful.
Here is how I do it.
In NetBeans, create a new Java project — let's call it MyComponents in this project — create all your components you want. The base of any component should be a JFrame or a JPanel. For this example we'll choose JPanel and call it mjPanel
Next in the Design view, drag and drop all the Swing components you want. Then from the Source view, make all the actions and logic.
Next, the most important step, right click your Java file, from Tools, choose Add to Palette, then in the dialog, choose where you want to put it, like say Swing Components Palette.
To finalize your component, from Build menu, choose Clean and Build, this will create you a Jar file in the project folder/dist.
From now on, in each project you want to use this component, just include the Jar file in your project classpath.
Open the Swing Components Palette, and you will see your new component.
Like this:
I suggest you use NetBeans and create a project using the "Swing Desktop Application" pre-existing template.
It will create the basic infrastructure for your app including a main window with a menu and status bar with a progress bar, about box, event handlers, etc, all pre-wired.
What's nice about it for example is that the progress bar is already configured to listen to any action task that you create, so by simply creating a new action task, you get a working progress bar that will run when the task executes, without having to code it.
For more info see here.
This is the most-read tutorial on Swing without a doubt. Run through the tutorial from beginning to end if you have time, to learn the Swing way of doing things.
At the same time, try to locate a copy of JBuilder to see the template code that it creates for Swing apps. You will code by hand using Eclipse or whatever, but JBuilder can show you some standard ways of doing things. If you can't get a copy, check out some of the Swing plugins for Eclipse. In all cases, try to keep in touch with the code yourself: most UI editors are only helpful in the suggestions they give you.
Run through the tutorial suggested by yar. I'd also recommend the excellent book, "Filthy Rich Clients" by Romain Guy and Chet Haase (two big names in the Swing world). It'll teach you to make apps that look great.
I haven't worked with it much, but the Griffon project is attempting to standardize the MVC pattern for Swing applications. However, it's written in the Groovy scripting language, which then runs on the JVM.
Read a good book on the topic, such as Core Java or Professional Java User Interfaces.
JDock offers a docking framework, allowing you to present your application in a single frame, divided into separate dockable areas. I confess I've never tried it though.
Spring RCP is one, although risky solution. It has some nice features and in my opinion it works pretty well for the most part. However, the documentation is close to non-existing and the future of the project is uncertain. There are some users (including me) committed to RCP though, so it will probably not die completely.
The Java Look and Feel Design Guide offers a detailed reference about the standards in user interface design with Swing and metal look and feel. If you are planning to use this cross platform l&f, I definitely recommend you the reading.

Am I right to choose NetBeans over Eclipse? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm a student, want to star some small Java projects, for fun and learning. I think GUI designer would be important, so guess NetBeans would be my choice. However, the company I'm working in and many many other people I know are using Eclipse. So...
Am I making the right decision (choosing NetBeans)?
Which one of these two do you prefer, and why?
just curios: Is there any other Java SDK out there?
Both Netbeans and Eclipse are good choices when it comes to java IDE, they both offer beginners a host of features and plugins that will make learning Java a lot easier. If you MUST HAVE a GUI designer then I would recommend netbeans (as its the only GUI designer I've actually tried) but for a beginner I recommend not using a designer all together. Especially just starting out learning how to design a GUI via code is useful. Java's windowing APIs are pretty simple to learn and shouldn't present too much of a challenge. My recommendation would be to just pick an IDE (either netbeans or eclipse) and start learning to code (don't worry about the GUI at first). Once you feel comfortable coding you can worry about GUI designers or not -- they're useful tools for rapid design but can also complicate the learning process.
IDEs and SDKs are not the same thing. Netbeans and Eclipse are IDEs (Integrated Development Environment). SDK is "Software development kit", basically, java, the compiler, and a whole bunch of other tools that you shouldn't worry about for now.
With the JDK alone, you can write java in a text editor and compile on the command line. IDEs are intended to simplify this process. Both Netbeans and Eclipse are powerful tools, but you're likely to be better off using what people around you are using so that you can learn from them.
I personally use Eclipse, but Netbeans is also very good. If you want to use the GUI designer, I would go with Netbeans because their GUI designer is much better. It is all preference. There is also products like JBuilder, Check out this page for a whole bunch of IDE's. http://www.webdeveloper.com/java/java_ides.html
Looking at other products is always a good decision.
Eclipse is a very strong machine when used with plugins.
SDK ? Means IDE ? Intellij Idea is the next IDE I am going to test. Just for curiosity.
I don't use GUI designers so won't comment on that aspect. Both are free so try each of them out. A lot of IDE choice boils down to personal preference, I'm a fan of text editors and command lines. No one can give you the "right" answer since no one is you and this is a fairly subjective area.
I'd say look for features that you are interested in and give all suitable IDEs a try. I'd been using eclipse for 5 years mostly because it was free and I liked in more than NetBeans. I just recently started using IntelliJ and like it a lot more but am paying the price for not having switched earlier.
Yes, if you like Netbeans, you should choose it over Eclipse. Choosing the IDE in which you more comfortable will help you learn Java and the tools much quicker. At a later date, it will probably be worthwhile to try Eclipse or IntelliJ. Each IDE has its strengths. I started with Netbeans and found it a much more initiative IDE than Eclipse. However, Eclipse is also an excellent IDE. Now I frequently use IntelliJ and Netbeans, and I kick around in Eclipse from time to time.

Categories