⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 day09.txt

📁 达内科技上课的 java学习笔记 分为18天学完
💻 TXT
字号:
                CoreJava(day09)  2007-12-13   --- 李艳

布局管理器的另两种:
		CardLayout:  (课堂代码:TestCardLayout.java)
				卡片布局,组件重叠放置。
				它将容器中的每个组件看作一张卡片。一次只能看到一张卡片
				当容器第一次显示时,第一个添加到 CardLayout 对象的组件为可见组件。 
				public void first(Container parent)翻转到容器的第一张卡片。 
				public void next(Container parent)翻转到指定容器的下一张卡片。如果当前的可见卡片是最后一个,则此方法翻转到布局的第一张卡片。
				public void previous(Container parent)翻转到指定容器的前一张卡片。如果当前的可见卡片是第一个,则此方法翻转到布局的最后一张卡片。
				public void last(Container parent)翻转到容器的最后一张卡片。
				public void show(Container parent,String name)翻转到已添加到此布局的具有指定 name 的组件。如果不存在这样的组件,则不发生任何操作。
				 
		GridBagLayout:  (课堂代码:TestGridBag.java)
				GridBagLayout 类是一个灵活的布局管理器。相当于董事长,不是实质性的管理。
				GridBagConstraints 相当于总经理,是实质性的管理者。
				每个由 GridBagLayout 管理的组件都与 GridBagConstraints 的实例相关联。
				组件可以跨行跨列的网格布局。
				定位:			
						public int gridx 水平位置。组件显示区域的开始边指的是水平、从左到右容器的左边缘和水平、从右到左容器的右边缘。
						public int gridy 垂直位置。指定位于组件显示区域的顶部的单元格,其中最上边的单元格为 gridy=0。
				行列操作:
						public int gridwidth行。指定在组件显示区域的一行中的单元格数。
						public int gridheight列。指定在组件显示区域的一列中的单元格数。
						GridBagConstraints.REMAINDER 换行
				设置如何改变组件大小:
						GridBagConstraints.NONE不扩充
						GridBagConstraints.HORIZONTAL水平扩展
						GridBagConstraints.VERTICAL 垂直扩展
						GridBagConstraints.BOTH 完全扩充
						
		  接口标识着布局管理器。LayoutManager是所有布局管理器都实现的接口。LayoutManager2比LayoutManager增加了些东西,即是加强版。
		  
菜单: (课堂代码:TestMenu.java)
	awt:
			MenuBar  
					public JMenu add(JMenu c)将指定的菜单追加到菜单栏的末尾。
			Menu
					JMenu(String s) 构造一个新 JMenu,用提供的字符串作为其文本。
					public JMenuItem add(JMenuItem menuItem)将某个菜单项追加到此菜单的末尾。返回添加的菜单项。
					
			MenuItem 
					public JMenuItem()创建不带有设置文本或图标的 JMenuItem
					public JMenuItem(String text)创建带有指定文本的 JMenuItem。
			
			
AWT事件模型(AWT,Swing的后台)(课堂代码:TestButtonEvent.java)

		构造图形界面的步骤
				1、选择一个容器   JFrame
				2、设置容器的布局管理器
				3、向容器添加组件
				4、事件的监听	
				
		事件的三要素:
				事件源:产生事件
				事件对象:用来描述事件的   -----一个系列的类
				事件的监听:用来处理事件的  -----一个系列的接口
				
		事件源是事件的产生者,事件是一个事件的讲述者,事件监听者处理事件
		
		比如单击按钮:按钮是事件,点击是事件,现在是找方法、找处理类。
	
		观察者设计模式:
				java.awt.Event 事件源
				EventObject  事件对象
				EventListener 事件监听者
				
		JAVA的事件处理机制:委派式的(松耦合)
				点击按钮---->组件自身会产生事件对象,但不一定负责处理,转而指派监听处理
				
				java.awt.AWTEvent
							ActionEvent(AWT事件王,所有按钮的单击,所有菜单的执行,文本框(单行)的回车,JList双击,JCheckbox)              
      				AdjustmentEvent 
      				ComponentEvent
      							ContainerEvent
      							FocusEvent(光标事件)
      							InputEvent
      										KeyEvent(键盘事件)
      										MouseEvent(鼠标事件)
      							WindowEvent窗口事件
      				ItemEvent
      				TextEvent(文本框、文件区域事件)                
             						                                             
         
         JTextArea,JTextField 这两个的文本改变不会产生TextEvent事件   
         
       事件        监听接口             处理方法
       Action    ActionListener    actionPerformed(ActionEvent) 
       
       Window    WindowListener    WindowClosing(WindowEvent)  
       															windowOpened(WindowEvent)
																		windowIconified(WindowEvent)
																		windowDeiconified(WindowEvent)
																		windowClosed(WindowEvent)
																		windowedActivated(WindowEvent)
																		windowDeactivated(WindowEvent)
			
		AWT事件模型步骤				
			1、作界面:
						选JFrame
						选组件
						选布局
			2、写监听
						实现接口
						重写方法、实例变量
			3、注册监听				
						addActionListener		
					
		jb1.addActionListener(this); //this在方法中代表的调用者,this在构造器中代表即将构造的对象。	
		
		常见问题:
					1、API的查找:敢于尝试
					2、当某一个变量需要在多个方法中使用时,可以把这个变量当做属性声明		
					
		java.awt.event.WindowListener:	(课堂代码:TestWindowListener2.java)		
					7个方法需要重写,但只用1个

     适配器:(课堂代码:TestWindowListener.java)
     			就是一个重写了所有监听接口中方法的类。
     			提供了适配器做监听的途径。
     			
     			ActionListener就不需要适配器,因为它只有一个方法。
     			
     	AWT中经常使用匿名内部类(继承适配器)做监听。                                          
                                       
				
						
				

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -