JTabbed pane customize title on selection

Hi all
i want to change the title font when a tab is selected.I add a ChangeListener to my JTabbed pane to intercept tab selection and to change font via html.
I have some proble ex:
if i click on tab4, it correctly change font but the tab2 take the title of the tab1 and so on.
This is the code
          ChangeListener changeListener = new ChangeListener()
               public void stateChanged(ChangeEvent changeEvent)
                    JTabbedPane sourceTabbedPane = (JTabbedPane) changeEvent.
                         getSource();
                    int index = sourceTabbedPane.getSelectedIndex();
                    for (int i = 0; i < sourceTabbedPane.getTabCount(); i++)
                         if (i == index)
                              sourceTabbedPane.setTitleAt(i,
                                   "<html><b>" + sourceTabbedPane.getTitleAt(i) + "</html>");
                         else
                              String desc  = sourceTabbedPane.
                                   getTitleAt(i).replaceAll("<html>", "").
                                   replaceAll("<b>", "").replaceAll("</html>", "");
                              sourceTabbedPane.setTitleAt(i, desc);
                    System.out.println("***********************");
                    for (int i = 0; i < sourceTabbedPane.getTabCount(); i++)
                         System.out.println(sourceTabbedPane.getTitleAt(i));
          };The last system.out show me the correct tirtle, only the selected with html but on screen i see some mixed title.Where i'm wrong?

I hope can you help me:
public static void main(String[] arg)
        JTabbedPane jTabbedPane = new JTabbedPane();
     jTabbedPane.addTab("Tab1", new JPanel());
     jTabbedPane.addTab("Tab2", new JPanel());
     jTabbedPane.addTab("Tab3", new JPanel());
     jTabbedPane.addTab("Tab4", new JPanel());
     jTabbedPane.addTab("Tab5", new JPanel());
     jTabbedPane.addTab("Tab6", new JPanel());
     jTabbedPane.addTab("Tab7", new JPanel());
     jTabbedPane.addTab("Tab8", new JPanel());
     ChangeListener changeListener = new ChangeListener()
        public void stateChanged(ChangeEvent changeEvent)
          JTabbedPane sourceTabbedPane = (JTabbedPane) changeEvent.
          getSource();
          int index = sourceTabbedPane.getSelectedIndex();
          for (int i = 0; i < sourceTabbedPane.getTabCount(); i++)
                  if (i == index)
                       sourceTabbedPane.setTitleAt(i,
                    "<html><b>" + sourceTabbedPane.getTitleAt(i) + "</html>");
               else
                    String desc = sourceTabbedPane.getTitleAt(i).replaceAll(
                    "<html>", "").
                    replaceAll("<b>", "").replaceAll("</html>", "");
               sourceTabbedPane.setTitleAt(i, desc);
          System.out.println("***********************");
          for (int i = 0; i < sourceTabbedPane.getTabCount(); i++)
               System.out.println(sourceTabbedPane.getTitleAt(i));
     jTabbedPane.addChangeListener(changeListener);
     JDialog dialog = new JDialog(new JFrame(),true);
     dialog.getContentPane().add(jTabbedPane);
     dialog.setPreferredSize(new Dimension(300,300));
     dialog.setSize(new Dimension(300,300));
     dialog.setVisible(true);
}

Similar Messages

  • No Welcome Pane, License Agreement, Disk Select, or Customize on Install?

    Just purchased Snow Leopard to upgrade my Intel MacBook w/ 10.4.11
    When I install the DVD and hit Install Mac OS X.app, it takes me to a screen that says "Click the button below to restart your computer and begin the installation process." Then there's the Restart button.
    Where is the Welcome Pane, License Agreement, Disk Select, or Customize button? Did I do something wrong? I seriously don't want to lose all my data and am worried that all these missing items could spell trouble if I restart.
    Tnx

    Hello, I'm having the same problem with my Intel Core Duo/10.4.11 that I'm trying to upgrade to Snow Leopard.
    Except I've gone through the RESTART process 4 or 5 times now and I never get to the install screen. Any suggestions?
    Thanks.

  • Focus event with JTabbed pane

    How do I set FocusListener to fire with I select a specific tab in a JTabbed pane? If I put the FocusListener on the Tabben pane it fires rquardless of which tab I select and if I try to use an if statement to single out a specific tab nothing happens.

    If you are interested in listening to when a tab is selected you can use a ChangeListener:
    JTabbedPane tab = ...
    tab.addChangeListener(new ChangeListener() {
        public void stateChanged(ChangeEvent e) {
            // get the selected tab-index:
            int index = ((JTabbedPane)e.getSource()).getSelectedIndex();
    });Btw, Swing related posts should be posted in the Swing forum.

  • Icon in the JTABBED PANE

    hello...
    How can I put an Icon into the JTABBED PANE?
    So every TAB will have its own Icon?
    I believe JBuilder 4.0 do that.
    Thank you.

    Read http://java.sun.com/docs/books/tutorial/uiswing/components/tabbedpane.html
    tabbedPane.addTab("Title", image, panel, "Tooltip");

  • Transparent JTabbed Pane

    Is there a way to make a JTabbed Pane transparent, include the tabs?

    What do you mean? A JTabbedPane simply displays the currently selected component. In order for the whole thing to be transparent, the components contained in the JTabbedPane also need to be transparent.

  • X JPanels in a JTabbed pane.

    I'm wondering if anyone can help.
    I have an application consisting of a JTabbed pane, within this there should be 'x' JPanels. Each JPanel has 3 RadioButtons and 5 Text fields. I need to be able to refer to each radio button and text field as RB0 - RBx and TF0 - TFx.
    It is obviously easy enough to do this for just 3 or even 20 (despite a lot of coding), however, my problem is getting a variable number (x) of Panels with respective variable numbers of TF and radio buttons.
    Simply I need to produce an array of panels, radiobuttons and textfields....
    anyone anyideas?

    another way of looking at it is to think how can I make 5 of exactly the same panel (just with different names) in the same tabbed frame in just one bit of code that is called 5 times - or x in this case.

  • 2nd time posting: Flashing JTabbed Pane?

    I'm trying to use a JTabbed Pane wherein tabs are created dynamically from the server. In order to alert the the user of the client software that a new tab has been created, I would like the top of the tab to flash or blink with a different color. any ideas how to do this? I really do want to avoid doing stuff like writing my own component etc.
    Tia,
    carlos

    You can use:
    tabPane.setBackgroundAt(i, Color.red);to set the background of tab number "i" to red, and
    you can use:tabPane.setBackgroundAt(i, tabPane.getComponentAt(i).getBackground());to set the background of tab number "i" back to its original color. If you do these in a loop with a delay, then you have a flashing tab.
    You can also change the font color if you want by using tabPane.setForeground(...) instead of setBackground(...)

  • JCombobox on a jtabbed pane, AND Choice on jtabbed pane problems

    I have a Choice on a jtabbed pane, on a panel that isn't showing when the jtabbed pane is made visible. The Choice on the hidden pane is "bleeding" through to the first tabbed panel. help!
    If I click on the second tabbed panel (where the Choice is), and then click on the first tabbed panel, the Choice becomes hidden like it is supposed to.
    AND, I have a JComboBox on a JTabbedPane, it works for the most part, but when you click on it, the scrollbox underneath it doesn't appear! Instead, a grey box appears below it. Help!

    I was having similar problems when I was working with JFrames, Anything not covered by a piece of GUI would show other parts of my program (like the progress bar or buttons and stuff).
    Anyway, it went away when I used the setBackground() method. My guess is that using this forces the container to be opaque or something. Anyway, it worked for me, maybe it will work for you also.
    Steve

  • Jtabbed pane is listening to the keyboard, how do i stop?

    hello
    this is probobly a simple Swing problem. i have a j3d canvas inside a tabbed pane with other info on other panes. i need the keyboard to listen on the canvas so i can move around the j3d world, but the left and right are being detected by the jtabbed pane, but i didnt add any listen to those. how can i stop this behavior from occuring? its very annoying.
    i appreciate any help you can lend..

    The reason it is responding to keyboard events is becuase it has the focus. Request focus on the component in the tab, and the tabbed pane should stop responding. If that doesn't work, try this:
    JTabbedPane tabbed = new JTabbedPane();
    KeyStroke[] keys = tabbed.getRegisteredKeyStrokes();
    for (int i=0; i<keys.length; i++) {
    int code = keys.getKeyCode();
    if (code == KeyEvent.VK_LEFT || code == KeyEvent.VK_RIGHT) {
    tabbed.unregisterKeyboardAction(keys[i]);

  • Jtabbed pane problem + flags printout

    Hi,
    I am having difficulty displaying a JTabbedPane which is contained by a dialog. When I display the Dialog for the first time the Tabbed displays perfectly - anytime after that it disappears.
    I found this really strange so I put in some printout statements for the JTabbed pane here's what I got
    When it displays the prinout for the JTabbed pane is ............................
    extCellTabbedPane
    rnh.adj.cellhandovermgt.gui.refactor.ExtCellTabbedPane[,0,0,0x0,invalid,layout=javax.swi
    ng.plaf.basic.BasicTabbedPaneUI$TabbedPaneLayout,alignmentX=null,alignmentY=null
    ,border=,flags=0,maximumSize=,minimumSize=,preferredSize=,haveRegistered=false,t
    abPlacement=TOP]
    When it does n't display the prinout for the JTabbedPane is
    rnh.adjcellhandovermgt.gui.refactor.ExtCellTabbedPane[,0,67,193x45,inv
    alid,layout=javax.swing.plaf.basic.BasicTabbedPaneUI$TabbedPaneLayout,alignmentX
    =null,alignmentY=null,border=,flags=16,maximumSize=,minimumSize=,preferredSize=,
    haveRegistered=false,tabPlacement=TOP]
    What I am interested in is the meaning of the parameter flags. In one case it is 0 and in one case it is 16? What does this parameter mean? Where I can get some information on this as I think this will tell me what is happening to the JTabbedPane.
    Thank you in Advance
    Alex

    The flags item reflect the flags value in JComponent
    class. It represents several status
    of the component:
    REQUEST_FOCUS_DISABLE
    IS_DOUBLE_BUFFERED
    ANCESTOR_USING_BUFFER
    IS_PAINTING_TITLE
    HAS_FOCUS
    IS_OPAQUE
    As my understand about your problem, this may be no
    help for you to locate the error
    As the message you post, you might use a third
    implementation of JTabbedPane, so the
    problem might be in the implementation. I
    have used JTabbedPane often with no error
    like you say :)
    Hope this Helps!Thanks for your help here - I would like more information if possible i.e. a numerical mapping for each property - do you know where I could get this. I don't really understand what you mean about the Third implementation. Do you mean simply extend the JTabbedPane? Thisis what I do but I don't really know what part to change to stop it disappearing. Thanks once again. Anymore help would be greatly appreciated.

  • JTabbed pane row shifting

    Hi,
    I would like to ask one question - In a JTabbed pane which has WRAP_TAB_LAYOUT , the tabs will be shown in more than one rows when number of tabs is more -When I click a tab in upper row, that row will come down - Is there any way to override this default behaviorur - that is the tabs should reamai in same position when I click
    Message was edited by:
    anikuts
    Message was edited by:
    anikuts

    If you force a particular L&F you can do this. For example, if you force the basic L&F you can create a subclass of BasicTabbedPaneUI which uses a subclass of BasicTabbedPaneUI.TabbedPaneLayout which overrides calculateTabRects.

  • JTabbed Pane - pane selection

    What method can I call on the JTabbedPane, that will simulate a user actually selecting a tab with a mouse?
    I'm trying to automate the process of a user actually clicking on a tab, but putting that method in my code, and calling that method (without any real life user clicking on the tab). Is there an easy way of doing this?
    Thanks in advance.

    I'm trying to use the robot method. Unfortunately I can't seem to figure out how to get the mouse screen locations (and sizes) of the tabs themselves.
    Event finding the JTabbedPane's screen coordinates doesn't seem to work:
                    JTabbedPane theSetOfTabs = (JTabbedPane)getTheContainer();
                    Component tComp = theSetOfTabs.getTabComponentAt(newPosition);
                    Point whereIsMouseOnScreen = tComp.getLocationOnScreen();This gives a NullPointerException because tComp is null. It shouldn't be.
    I have three tabs in my GUI and the value of newPosition is 1. I checked, and theSetOfTabs is a JTabbedPane. What am I missing?
    Thanks.

  • JTabbed Pane not displaying title

    Hi Friends,
    I am developing a desktop application using swing components in Netbeans IDE 6.7.1. I have added a jtabbedpane inside another jtabbedpane. Each has individual titles. The inner one has 3 tabs. In preview mode all are displaying the titles properly. But when the application is deployed none ot the tab titles are shown except in one tab of the outer jtabbedpane.
    Could someone help please?
    Thanks,
    Zach.

    DarrylBurke wrote:
    In preview mode all are displaying the titles properlyWhat preview mode?
    dbI mean the design preview option in netbeans.
    Now its working. Dont know why. I didn't do anyhting new.
    Thanks a lot.

  • Setting the Font of Selected Tab in JTabbed Pane

    Hi,
    i have A JTabbedPane , I want to set the font of the selected tab to be bold. Can anyone please tell me how can i do that...
    waiting for reply ,
    Bye
    Sanjeev

    http://search.java.sun.com/search/java/index.jsp?qp=&nh=10&qt=%2BJTabbedPane+%2Btab+%2Bfont&col=javaforums

  • Report Painter - title for selection screen

    Hi
    I have created a report for PCA within GRR1/2 transactions. When I run the report, at the initial screen where I select the period for example, there is no title on the screen, it just comes up as ": SelectioN". However when the report runs, I actually see the name of the report.
    How do I add the name to the selection screen?

    Hi,
    I believe, the name of selection screen comes from the name of the Report Group, but I could be wrong...
    Regards,
    Eli

Maybe you are looking for