I developed a small application in Java using Eclipse IDE. Now i want to make UI for that application. Since i don't have much command over JAVA so i am looking for some drag and drop feature. I heard that netbeans provide the drag and drop functionality, but ideally i am looking for some Eclipse plug-in that provides SWING control. Please share if any such plugin exists.
The best and free one IMO is WindowBuilder Pro from Google.
More info is at http://code.google.com/javadevtools/download-wbpro.html
Related
I'm working on Swing application and I'm using my IDE as Eclipse. Eclipse doesn't have a Swing UI Designer Tool according to my knowledge. Now this application is getting complex.
So I want to use a UI Designer Tool.
When I open my JFrame classes in Netbeans it doesn't provide me a UI Designer.
I thought I could use Netbeans, but Netbeans keeps it's own codes in order to support the UI Design.
Is there a way to convert regular JFrame class to Netbeans UI Designer compatible JFrame class ?
First of all, Eclipse does have a Swing UI Designer Tool indeed. It is call WindowBuilder Pro and you can update your Eclipse to include it easily. The manual is here.
WindowBuilder Pro is very stable and runs on any platform Eclipse supports. It may not be as well integrated to Eclipse, as Matisse GUI builder is in Netbeans, but you can do your development without any problems and limitations with both.
You can do almost anything with both plug-ins. Both are flexible and expandable if you learn how to work with them.
Conversions of Swing applications between Eclipse and Netbeans are not very easy. You have to select one environment and stick to it.
GUI builders do not substitute basic Swing knowledge. It is always best for beginners to write their Swing code, using a regular editor, until they understand the concepts and the mechanics of Swing. Once you have passed this stage, if you need to write a large application, are much better off with a GUI builder than without. You can move from the prototype to the real application quickly. It allows fast modifications and adjustments of your components.
After all it is the programmer that makes the good program. Tools are just there for your convenience.
Is NetBeans platform for creating only rich client applications or we can also create single frame applications? There is a wizard for Swing Application Framework based application, but is this possible to create the same single frame application using NetBeans platform. If yes, then please guide me how can I create one. Thanks.
First of all NetBeans is a impressive, powerful but complex platform to build java gui applications.
The main problem of all development platforms is, that there are some trade offs to be made to unleash the real power of the platform.
It is hard to tell if NetBeans Platform is an overkill for your needs. But the introduction videos and tutorials are great instruments to get a feeling of the programming model and runtime environment. They helped me a lot at the beginning.
If you have concrete questions afterwards feel free to ask.
Netbeans Application quickstart guide
I am starting to learn Java development (I used to develop in C++), I am using some older materials, however, I would also like to keep up to date with Java developments and recommendations.
I did some background research regarding Swing and JavaFX. I learnt that development on JavaFX script has stopped, however, version 2 of FX is in development so I am not sure what this will end up being as I thought the scripting as a major part of the standard.
When using Netbeans I discovered that further development on Swing is to stop and too is Netbeans support (JSR-296). Netbeans recommends moving to the Netbeans Platform API which I am reluctant to do because I want to learn Java as a true cross platform language and not be tied to any particulars.
This begs me to ask the question what is the preferred new approach to deveping GUIs in the Java world?
You will probably find the Wikipedia page about JSR-296 informative.
Swing is an API that lets you work with various graphical 'controls'. You can arrange them is any number of ways to create a GUI for your application.
The Swing Application Framework (JSR-296) was and effort to create an API that would create a 'standard' way of writing applications, that would use Swing to present the UI.
The NetBeans Platform is a different effort with similar goals to JSR-296... though it does encompass some other areas, like modularity. The NetBeans IDE is built on the NetBeans Platform. The NetBeans Platform uses the Swing API to present UI.
SWT is an API at a similar level of abstraction as Swing.
The Eclipse Rich Client Platform (Eclipse RCP) is another application framework. The RCP is based on SWT. The Eclipse IDE is based on the Eclipse RCP.
You should know that:
You do not need to use the NetBeans IDE to create an application based on the NetBeans Platform.
You do not need to use the Eclipse IDE to create an application based on the Eclipse RCP.
Swing (Java) or SWT (Eclipse) - both are very much alive.
JavaFX should be considered a failed distraction of Sun's (now Oracle's).
I'm working on a swing application. I don't want to migrate it to SWT, but I'd like to use some benefits of Eclipse RCP application. Especially, I want to use the update technology to distribute application updates.
It would be great if you knew a tutorial on how to build an Eclipse RCP application that can start a custom GUI based on Swing.
Uhm... I don't think you'll be able to get there with the eclipse rcp...
There's a lot you'd have to adopt, including the whole OSGI structure for your app -- if you're unwilling to change your UI toolkit you've probably already got too much infrastructure in place to want to adopt that much of the RCP.
If it's just swing your married too for whatever reason, look into the netbeans rcp.
If it's just updating you want... there's more then 1 sparkle implementation for java.
Check this:
http://www.eclipse.org/articles/article.php?file=Article-Swing-SWT-Integration/index.html
However, I strongly advise against using them. You will end up with a lot of issues with platform independence. If you're just aiming at Windows, you might be fine.
I agree with lscoughlin, you're getting way too much overhead for that bit of functionality. You can always try to take the bits you need out of the Eclipse/Equinox project, thereby building a leaner solution. Be aware of licensing then. Looking at some parts of the code for inspiration can be helpful too, but it's a huge project.
Tough task... but you can try qwylt.
It is a framework based on Equinox (Eclipse OSGi implementation). Hopefully it will provide enough functionality for you.
Generally your request could be realized with the new Eclipse 4. In the new model all graphical output is done with so called Renderers which render the application model into the grapical output you see with your application. Lars Vogel has a Tutorial on those and Kai Tödter even did a brief article on different renderers in JavaFX 2.0, Swing & SWT Renderers for the Eclipse 4.x Application Platform.
He also did a basic SWING renderer which is available on https://github.com/toedter/e4-rendering I can however not tell on how stable this renderer is and to what extent it covers all application model elements provided by e4.
I'm a developing primary Java webapplications at work. I would like to start creating a little java desktop app. It should be a simple CRUD app with database connection, 2 - 3 forms and a smart stats page. To be honest: I'm kinda lost in this topic. I've took some time to guide through swing but the tutorials are all old and most of the stuff seems to be very unhandy. Aren't there any swing frameworks or somethingelse?
Vogella gives a good introduction into Eclipse RCP development but this all seems too much for my use at home.
What I'm searching is a easy/light way to create a desktop app. Which options are available in this topic? Would be glad if someone could share some experiences with Swing or Eclipse RCP and if its worth to spend time into getting in of this.
Thanks
For a simple application like yours, Eclipse RCP is just overkill. Its a very high level framework. SWT is a good option. If you have any experience with Swing or SWT, I suggest you stick to it. You should also look into MiGLayout.
You might consider JavaFX. I haven't yet had time to try it myself, but I hear good things about the ease of use and capabilities.
Eclipse RCP is quite straightforward IMHO, you could always start with a Mail Template from the new Project Wizard. If youre looking for sth a little bit more lighweight you could try Spring Application Framework. e4 makes it considerably easier to develop RCP "on the fast lane". You could try this excellent Vogella tutorial
If you don't mind using Groovy try Griffon.
I am in the process of porting my Swing database application to the Netbeans RCP Platform.
The Netbeans RCP is similar to Eclipse RCP but it is fully based on Swing (Swing ships with the JRE/JDK , so it is more platform independent).
If you are a beginner to Swing, I would certainly recommend using the Netbeans RCP because it automatically solves a lot of beginner's problems and enforces good practices. It also has some powerful GUI elements (like Outline, option-button) which are not present in plain-Swing. The netbeans.org has ample video tutorials to get started.
Also, with the Netbeans RCP, you get some extra goodies which may come useful, like modular JavaHelp integration for online help in the client.
Also, Netbeans can generate easily deployable Webstart package or platform-dependent installers for deploying the desktop app (I recommend Webstart, that is the easiest way to distribute your application, only Java needs to be installed beforehand and that is usually doable even for the dumbest of users).