7.4 vs. 7.3.1: Configuring the NetBeans Window System

When you're creating an application on the NetBeans Platform, you automatically have access to an extensible Options Window as a centralized location for customizing various parts of the application. A default subtab of that Options Window is dedicated to configuration settings for the Window System of the application.

Here's what it looks like in NetBeans Platform 7.3.1:

And this is what it looks like in NetBeans Platform 7.4:

See "Show parent folder in tab title" and "Show full file path" below, together with tab placement "bottom" and maximum row count 2:

Of course, I didn't type a single line of code to create the application you see above. Aside from the NetBeans Platform modules automatically included by the "NetBeans Platform Application" template, I included the "ide/User Utilities" module to include the "File | Open File" menu item and the "ide/Image" module to include the NetBeans Image Editor and the code for recognizing and loading image files.

Note: The enhancements, i.e., the differences between the first two screenshots of the Options window, not including the Look and Feel drop-down, come from a new module "org.netbeans.core.multitabs". If you exclude "platform/Multi-tabs" in the Project Properties dialog of the application, you'll be excluding the enhancements, which includes the scroll buttons:


Nice, proper tab management is always useful to have.
Now, are there plans to move the Netbeans platform over to JavaFX? Cause that would rock.

Posted by alex on August 15, 2013 at 02:29 PM PDT #

There are several projects out there that aim to achieve that, e.g, https://java.net/projects/mfx and https://java.net/projects/efx. NetBeans IDE is already using JavaFX, e.g., the JavaFX WebView and that's how NetBeans will use JavaFX, i.e., where it makes sense, not just for the sake of it, but where it makes sense to do so.

Posted by Geertjan on August 15, 2013 at 03:01 PM PDT #

Hi Geertjan;

Multi-row tabs options are very nice but I have 2 worries:

1- I don't think "Show parent folder in tab title" and "Show full file path" are applicable for a lot of NB Platform applications as Document Tabs (TopComponents opened in editor mode) are not necessarily used for files. We use TopComponents for bunch of stuff and that doesn't have any notion of 'parent folder' or 'full path'.

2- About L&F. What if you want to restrict selectable L&Fs or letting user change L&F is not desired at all ? Sure in theory you must do your best to make your UI play good in all L&Fs but in practise that is not really possible. What if you are using a licensed L&F, is there a way to add that L&F in selection combobox ?

Posted by guest on August 16, 2013 at 03:24 PM PDT #

I was hoping more into turning Netbeans into a poster child for JavaFX, but a step-by-step approach makes sense, too. Especially since there may not be an infinite supply of manpower available.

Posted by alex on August 16, 2013 at 03:50 PM PDT #

This article could be improved by adding how to access this Options Window immediately after mentioning it the first time. Thank you.

Posted by guest on January 22, 2014 at 07:50 AM PST #

Go to the Tools menu and there you'll find "Options".

Posted by Geertjan on January 22, 2014 at 08:14 AM PST #

Hi Geertjan,

currently i learn about NB Platform based on Maven,
i realized that --laf option no longer works when i set in netbeans.conf?
is it right?

Can you tell how to set default laf of NB Platform App?

Thank you

Posted by Eko Suhariyadi on April 18, 2014 at 06:45 AM PDT #

Hi Geertjan... Thanks for this. I never knew about it.
Is there a way to change the font or the color of the text that appears in the tab title?

Posted by Kasem on June 02, 2014 at 04:11 AM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed

Geertjan Wielenga (@geertjanw) is a Principal Product Manager in the Oracle Developer Tools group living & working in Amsterdam. He is a Java technology enthusiast, evangelist, trainer, speaker, and writer. He blogs here daily.

The focus of this blog is mostly on NetBeans (a development tool primarily for Java programmers), with an occasional reference to NetBeans, and sometimes diverging to topics relating to NetBeans. And then there are days when NetBeans is mentioned, just for a change.


« July 2016