第十二周课程总结
一.JPanel:在JPanel中科院加入任意的组件,然后直接将JPanel容器加入到JFrame容器中即可显示
JPanel的基本使用:
1 2 3 4 5 6 7 | JFrame frame= new JFrame(); JPanel pan= new JPanel(); .............. frame.add(pan); |
二.JSplitPane:主要功能是分割面板,可以将一个窗体分为两个子窗体,可以是水平也可以是垂直。
1.JSplitPane类的主要方法及常量:
JSplitPane() : 创建一个配置为将其子组件水平排列、无连续布局、为组件使用两个按钮的新 JSplitPane。
JSplitPane(int newOrientation) :创建一个配置为指定方向且无连续布局的新 JSplitPane。
JSplitPane(int newOrientation, boolean newContinuousLayout) :创建一个具有指定方向和重绘方式的新 JSplitPane。
2.常用方法
setDividerLocation(double proportionalLocation) :设置分隔条的位置为 JSplitPane 大小的一个百分比。
setDividerLocation(int location) :设置分隔条的位置。
setContinuousLayout(boolean newContinuousLayout) :设置 continuousLayout 属性的值,在用户干预期要使子组件连续地重新显示和布局子组件,此值必须为 true。
setDividerSize(int newSize) :设置分隔条的大小。
getDividerLocation() :返回最后传递给 setDividerLocation 的值。
getDividerSize() :返回分隔条的大小。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | package dishier; import javax.swing.*; import java.awt.*; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub JFrame f= new JFrame( "ONE OF A KIND" ); JSplitPane jsp= new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, new JLabel( "左标签" ), new JLabel( "右标签" )); jsp.setDividerSize( 6 ); JSplitPane jsp2= new JSplitPane(JSplitPane.VERTICAL_SPLIT,jsp, new JLabel( "下标签" )); jsp2.setDividerSize( 10 ); jsp2.setOneTouchExpandable( true ); f.add(jsp2); f.setSize( 300 , 400 ); f.setLocation( 300 , 200 ); f.setVisible( true ); } } |
三:JTabbedPane:在一个面板上设置多个选项卡供用户选择
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | package dishier; import java.io.File; import javax.swing.*; public class Demo1 { public static void main(String[] args) { JFrame f= new JFrame( "ONE OF A KIND" ); JTabbedPane tab= new JTabbedPane(JTabbedPane.TOP); JLabel lab= new JLabel( "标签" ); JButton button= new JButton( "按钮" ); String path= "d:" +File.separator+ "picture" +File.separator+ "james.jpg" ; Icon image= new ImageIcon(path); JLabel lab2= new JLabel(image); tab.addTab( "文字选项" ,lab); tab.addTab( "按钮选项" ,button); tab.addTab( "图片选项" , null ,lab2, "图像" ); f.add(tab); f.setSize( 300 , 400 ); f.setLocation( 300 , 200 ); f.setVisible( true ); } } |
四:JScrollPane:主要由JViewport和JScrolllBar两部分组成,前者主要是显示一个矩形的区域让用户浏览,而后者主要是是形成水平或垂直的滚动条。
五:事件处理:
事件和监听器
窗体事件及监听适配器
WindowListener时专门处理窗体事件的监听接口,一个窗体的所有变化,如窗口打开、关闭等都可以使用这个接口进行监听
上课听的时候贼想睡觉,然后没怎么听懂,在书上看了一些,感觉有点难。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)