JCombo e timer

Salve galera!
Estou com um problema simples creio, mas to me enrolando nele.
Tenho um jcombo dentro de jpanel, e esse jpanel dentro de um jscroll que tem uma rolagem automática. Essa rolagem é ativada quando o componente q recebe o foco está a certa distancia do centro da visualização. Dae é criado um objeto Timer (o t) q desce suavemente heheheheehehe locando o foco no centro da visualização. Tá bem legalzin. Meu problema é q quando um jcombo recebe o foco, e o scroll sobe, o popup fica pra baixo hehehehehe… funciona normal, mas fica bem feio. Já tentei de tudo pra parar o t, mas nã consigo. Creio que o evento foco aconteça depois desses eventos que possuem a propriedade de parar o t, que estão abaixo:


 combo.addPopupMenuListener(
                                  new javax.swing.event.PopupMenuListener() {  
                                     public void popupMenuCanceled(javax.swing.event.PopupMenuEvent evt) {  
                                    
                                       try{
                                          t.stop(); t = null;ignoraFocar = true;
                                       }
                                           catch(Exception ep){}  
                                    }  
                                     public void popupMenuWillBecomeInvisible(javax.swing.event.PopupMenuEvent evt) {  
                                    
                                       try{
                                          t.stop(); t = null;ignoraFocar = true;
                                       }
                                           catch(Exception ep){}  
                                    }  
                                     public void popupMenuWillBecomeVisible(javax.swing.event.PopupMenuEvent evt) {  
                                       try{
                                          t.stop(); t = null;ignoraFocar = true;
                                       }
                                           catch(Exception ep){}  
                                    }  
                                 });  
 combo.addActionListener(
                                  new ActionListener(){
                                     public void actionPerformed(ActionEvent e) {
                                       try{
                                          t.stop(); t = null;ignoraFocar = true;
                                       }
                                           catch(Exception ep){}   
                                       
                                     
                                          
                                       
                                    }
                                 }   
                              );
                           combo.addComponentListener(
                                  new ComponentAdapter() {
                                     public void componentResized(ComponentEvent e) {
                                       try{
                                          t.stop(); t = null;ignoraFocar = true;
                                          
                                       }
                                           catch(Exception ep){}
                                    
                                    }
                                 });

Como disse o Lenin: Que fazer?