最近将一个java项目进行软件升级,以前是jdk1.4.2下编译和运行的,现在要统一升级到1.6的最新版本,在其他都升级安装配置好后,java客户端登进去,发现有些界面不能正常操作,后来经过2天调试跟踪,终于发现jdk1.6 的JTabbedPane中 removeTabAt 方法不和jdk1.42有差异。jdk1.6中多了一段:
/* if the selected tab is after the removal */
if (selected > index) {
setSelectedIndexImpl(selected - 1, false);
/* if the selected tab is the last tab */
} else if (selected >= getTabCount()) {
setSelectedIndexImpl(selected - 1, false);
Page newSelected = (selected != 0)
? (Page)pages.elementAt(selected - 1)
: null;
changeAccessibleSelection(null, oldName, newSelected);
/* selected index hasn't changed, but the associated tab has */
} else if (index == selected) {
fireStateChanged();
changeAccessibleSelection(null, oldName, (Page)pages.elementAt(index));
}
终于找到原因,迫不得已修改程序。也不知道jdk1.6以后swing其他控件是否也有类似改变。
注:后来对比jdk1.5的源码,在jdk1.5.09中也没有加这一段代码。
分享到:
相关推荐
2. **Swing增强**:JDK 1.6对Swing GUI库进行了大量改进,包括更好的外观和感觉,以及新的组件如JTabbedPane和JSplitPane。同时,对AWT-Swing桥进行了优化,使得两者之间的交互更加顺畅。 3. **NIO.2文件系统API**...
2. **改进的Swing组件**:Swing UI库得到增强,例如,JTable和JList的性能提升,以及新的JTabbedPane布局管理器。 3. **NIO.2(New IO 2)**:引入了对异步I/O操作的支持,如AsynchronousFileChannel,使得I/O处理...
3. **改进的Swing组件**:JDK 1.6包含了一些Swing组件的增强,如JTabbedPane的改进,以及对AquaLookAndFeel的更好支持,提供了一致且美观的用户界面。 4. **改进的JavaScript交互**:通过Java Web Start和Java插件...
4. **改进的Swing**:Swing组件在JDK 1.6中得到增强,包括更好的外观和感觉、性能提升和新的组件,如JTabbedPane的改进以及JTable的性能优化。 5. **动态代理**:JDK 1.6对动态代理的支持更加完善,使得开发者能更...
4. **改进的Swing和AWT**:Swing组件的性能得到优化,UI外观更加一致,同时还添加了一些新组件和功能,如JTabbedPane的滚动功能。 5. **增强的XML处理**:JDK 1.6提供了更强大的XML处理能力,包括SAX和DOM解析器的...
3. **Swing增强**:JDK 6对Swing组件进行了大量优化,例如`JSplitPane`的改进,使得布局管理更加灵活。还添加了`JTabbedPane`的滚动支持和`JTable`的行选择模式。 4. **Web服务支持**:Java EE 6的一部分,JDK 6...
Swing是Java的GUI(图形用户界面)库,JDK 1.6对Swing进行了改进,添加了新的组件和功能,如JTable的改进,使得数据绑定更为方便,以及JTabbedPane的增强,使得多面板布局更加灵活。 3. **NIO.2(非阻塞I/O)** ...
7. **Swing增强**:包括对Swing组件的改进,如JTable性能提升、JTabbedPane的改进等。 8. **编译器优化**:JDK6的编译器Javac进行了优化,提升了编译速度和生成代码的质量。 9. **JavaScript引擎(Rhino)**:内置...
2. **改进的Swing UI**:Swing组件库在这一版本中得到了优化,提供了更好的用户体验,例如AquaLookAndFeel的改进,以及新的JTabbedPane和JSplitPane设计。 3. **NIO.2**:非阻塞I/O API的重大扩展,引入了新的文件...
容器:JTabbedPane/JScrollPane/JSplitPane/JInternalFrame 组件:JTable/JTree/JList 基本组件:ToggleButtons/JButton/JComboBox/ProgressBar/Slider/Spinner/TextFeild/JEditorPane 选择器:JColorChooser/...
- **增强的Swing组件**:JDK6对Swing库进行了大量优化,提供了更好的外观和感觉,同时增加了新的组件,如JTabbedPane的改进和JSplitPane的双向分割功能。 - **动态语言支持**:引入了JSR 223,使得JVM能够更好地...
Swing组件库在JDK 6中也有所更新,添加了诸如JTabbedPane和JSplitPane等组件,提高了用户界面的设计灵活性。JDBC的改进使得Swing应用程序可以更方便地与数据库交互。 动态语言支持是JDK 6的另一大亮点。JRuby、...
3. **增强的Swing**:JDK 6对Swing组件进行了大量优化,包括更好的UI外观、性能提升和新的组件如JTabbedPane等。 4. **NIO.2**:引入了新的文件系统API,增强了非阻塞I/O操作的能力,如文件通道和异步文件操作。 5...
5. **改进的Swing和AWT**:提供了新的UI组件,如JTabbedPane,以及对图形和布局管理的优化。 6. **NIO.2(New I/O API)**:增加了对异步I/O的支持,提高了文件操作性能。 7. **Scripting API**:允许在Java应用中...
3. **Swing增强**:JDK 6.0对Swing组件进行了改进,增加了诸如JTabbedPane的新功能和JLayeredPane,以支持更复杂的用户界面设计。此外,Swing的国际化和可访问性得到了增强。 4. **NIO.2(New I/O 2)**:引入了...
3. **改进的Swing UI**:JDK 6对Swing组件进行了升级,提供了更好的外观和感觉,同时增加了新的组件和功能,如JTabbedPane的改进,以及JTable的性能提升。 4. **NIO.2**:Java.nio包的扩展,引入了JSR 203(New I/O...
4. **Swing和AWT更新**:GUI开发工具包Swing和AWT在JDK 6中得到升级,提供了更好的组件和更丰富的功能,如JTable的改进和JTabbedPane的增强,使得桌面应用开发更加便捷。 5. **NIO.2(New I/O 2)**:引入了新的...
1. **增强的Swing组件**:JDK 1.6对Swing库进行了优化,提升了图形用户界面(GUI)组件的性能,同时增加了新的组件和功能,如JTabbedPane的滚动支持。 2. **改进的性能**:这一版本的JDK通过优化JVM(Java虚拟机)...
1. **增强的Swing组件**:提供了更好的GUI设计,如JSplitPane改进和JTabbedPane的选项卡拖放功能。 2. **改进的内存管理**:包括垃圾回收的优化,提高了整体性能。 3. **动态代理**:允许在运行时创建实现一组接口的...
4. **Swing增强**:JDK 1.4对Swing GUI库进行了优化,包括JTable性能提升、国际化支持改进以及JTabbedPane组件的添加,使得Swing成为更强大的桌面应用开发工具。 5. **Logging API**:引入了java.util.logging....