Java布局管理器setLayout() 华清课设

合集下载

Java面向对象程序设计案例教程(王贺) 第七章习题答案[5页]

Java面向对象程序设计案例教程(王贺) 第七章习题答案[5页]

1.选择题(1)下列说法中错误的是()A.对Swing构件只能设置一个边框B.Swing构件能建立组合边框或自己设计边框C.在Swing构件中,按钮可以使用图标修饰D.Swing构件支持键盘代替鼠标的操作(2)向容器添加新构件的方法是(A)A. add( )B. insert( )C. fill( )D. set( )(3)关于布局管理器LayoutManager,下列说法中正确的是(D)A.布局管理器是用来部署Java应用程序的网上发布的youtManager本身不是接口C.布局管理器是用来管理构件放置在容器中的位置和大小的D.以上说法都不对(4)JTextField类提供的GUI功能是(A)A.文本区域 B.按钮 C.文本字段 D.菜单(5)将GUI窗口划分为东、西、南、北、中五个部分的布局管理器是(D)A.FlowLayout B.GridLayout C. BoxLayout D. BorderLayout(6)关于Panel,下列说法中错误的是(D)A. Panel可以作为最外层的容器单独存在B. Panel必须作为一个构件放置在其他容器中C. Panel可以是透明的,没有边框和标题D. Panel是一种构件,也是一种容器2.填空题(1)( BorderLayout )包括5个明显的区域:东、南、西、北、中。

(2)Java的图形界面技术经历了两个发展阶段,分别通过提供AWT开发包和(Swing)开发包来体现。

(3)可以使用setLoaction( )、setSize( )或(setBounds( ) )中的任何一种方法设置组件的大小或位置。

(4)( GridLayout )布局管理器使容器中各个构件呈网格布局,平均占据容器空间。

(5)框架的默认布局管理器( BorderLayout)。

3.编程题(1)制作如图7-20所示的登录界面。

图7-20package com.zhouzhou;import java.awt.*;import javax.swing.*;public class Demo11 extends JFrame {// 定义组件JPanel jp1, jp2, jp3;JLabel jlb1, jlb2;JButton jb1, jb2;JTextField jtf1;JPasswordField jpf1;public static void main(String[] args) {// TODO Auto-generated method stubDemo11 d1 = new Demo11();}// 构造函数public Demo11() {jp1 = new JPanel();jp2 = new JPanel();jp3 = new JPanel();jlb1 = new JLabel("用户名");jlb2 = new JLabel("密码");jb1 = new JButton("登录");jb2 = new JButton("取消");jtf1 = new JTextField(10);jpf1 = new JPasswordField(10);// 设置布局管理(上面忘记:extends JFrame,这里出错了) this.setLayout(new GridLayout(3, 1));// 加入各个组件jp1.add(jlb1);jp1.add(jtf1);jp2.add(jlb2);jp2.add(jpf1);jp3.add(jb1);jp3.add(jb2);// 加入到JFramethis.add(jp1);this.add(jp2);this.add(jp3);this.setSize(250, 150);this.setTitle("登录");this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true);}}(2)制作如图7-21所示的选择界面。

Java程序设计实验指导书(答案)

Java程序设计实验指导书(答案)

第Ⅰ部分:实验指导实验1:Java开发环境J2SE一、实验目的(1)学习从网络上下载并安装J2SE开发工具。

(2)学习编写简单的Java Application程序.(3)了解Java源代码、字节码文件,掌握Java程序的编辑、编译和运行过程。

二、实验任务从网络上下载或从CD-ROM直接安装J2SE开发工具,编写简单的Java Application程序,编译并运行这个程序。

三、实验内容1.安装J2SE开发工具Sun公司为所有的java程序员提供了一套免费的java开发和运行环境,取名为Java 2 SDK,可以从上进行下载。

安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到C:\j2sdk1.4.1_03目录下。

教师通过大屏幕演示J2SE的安装过程,以及在Windows98/2000/2003下环境变量的设置方法。

2.安装J2SE源代码编辑工具Edit Plus教师通过大屏幕演示Edit Plus的安装过程,以及在Windows98/2000/2003操作系统环境下编辑Java 原程序的常用命令的用法。

3.编写并编译、运行一个Java Application程序。

创建一个名为HelloWorldApp的java Application程序,在屏幕上简单的显示一句话"老师,你好!"。

public class HelloWorldApp{public static void main(String[] args){System.out.println("老师,你好!");}}4.编译并运行下面的Java Application程序,写出运行结果。

1:public class MyClass {2:private int day;3:private int month;4:private int year;5:public MyClass() {6:day = 1;7:month = 1;8:year = 1900;9:}10:public MyClass(int d,int m,int y) {11:day = d;12:month = m;13:year = y;14:}15:public void display(){16:System.out.println(day + "-" + month + "-" + year);17:}18:public static void main(String args[ ]) {19:MyClass m1 = new MyClass();20:MyClass m2 = new MyClass(25,12,2001);21:m1.display();22:m2.display();23:}24:}运行结果:1-1-190025-12-2001实验2:Java基本数据类型一、实验目的(1)掌握javadoc文档化工具的使用方法。

qt里setlayout用法

qt里setlayout用法

Qt里setLayout用法在Qt中,setLayout是一种常用的布局管理器函数,用于设置窗口或窗口部件的布局。

布局管理器是一种用于自动调整窗口部件位置和大小的工具,可以使界面更加灵活和适应不同的窗口尺寸。

本文将详细介绍Qt中setLayout的用法,包括创建布局管理器、设置布局管理器、添加和删除窗口部件等操作。

1. 创建布局管理器在使用setLayout之前,我们首先需要创建一个布局管理器。

Qt提供了几种常用的布局管理器,包括垂直布局(QVBoxLayout)、水平布局(QHBoxLayout)、网格布局(QGridLayout)等。

1.1 垂直布局(QVBoxLayout)垂直布局将窗口部件按照垂直方向依次排列,可以使用QVBoxLayout类来创建垂直布局管理器。

QVBoxLayout *layout = new QVBoxLayout();1.2 水平布局(QHBoxLayout)水平布局将窗口部件按照水平方向依次排列,可以使用QHBoxLayout类来创建水平布局管理器。

QHBoxLayout *layout = new QHBoxLayout();1.3 网格布局(QGridLayout)网格布局将窗口部件按照网格形式排列,可以使用QGridLayout类来创建网格布局管理器。

QGridLayout *layout = new QGridLayout();1.4 其他布局管理器除了上述常用的布局管理器,Qt还提供了一些其他的布局管理器,如堆叠布局(QStackedLayout)、表单布局(QFormLayout)等,根据实际需求选择合适的布局管理器。

2. 设置布局管理器创建布局管理器后,我们需要将其设置给窗口或窗口部件,以便布局管理器能够对窗口部件进行布局。

QWidget *widget = new QWidget();widget->setLayout(layout);在上述代码中,我们创建了一个QWidget对象widget,并通过setLayout函数将布局管理器layout设置给widget。

JavaGUI布局管理器

JavaGUI布局管理器

JavaGUI布局管理器容器可设置布局管理器,管理容器中组件的布局:container.setLayout(new XxxLayout());Java有6种布局管理器,AWT提供了5种:FlowLayoutBorderLayoutGridLayoutGridBagLayoutCradLayoutSwing还提供了⼀种:BoxLayout1、FlowLayout 流式布局顾名思义,组件像⽔流⼀样,从第⼀⾏开始,从左向右依次排列,碰到边界时转到下⼀⾏继续。

三个构造函数:FlowLayout() //使⽤默认参数FlowLayout(int align) //设置对齐⽅式FlowLayout(int align,int hgap,int vgap) //设置对齐⽅式、⽔平间距、垂直间距align是FlowLayout类的常量,⽐如:FlowLayout.LEFT,FlowLayout.CENTER2、BorderLayout 边界布局将容器划分为EAST、WEST、SOUTH、NORTH、CENTER五个部分,每个部分可放置⼀个组件。

2个构造函数:BorderLayout() //使⽤默认参数BorderLayout(int hgap,int vgap) //设置⽔平间距、垂直间距放置组件时需指定位置:container.add(Component comp, Borderlayout.SOUTH); //第⼆个参数是BorderLayout类的常量,指定组件位置container.add(Component comp); //缺省位置时,默认为BorderLayout.CENTER,放在中间⼀共5个位置,⼀个位置最多放1个组件。

当然,可以在⼀个位置放置多个组件,只是后放置的组件会覆盖之前放置的组件。

也可以⼀个都不放。

3、GridLayout ⽹格布局将容器划分为指定⾏数、列数的⽹格,每个格⼦的尺⼨都相同,⼀个格⼦中放置⼀个组件,适合组件⼤⼩差不多的,⽐如放置计算器的按钮。

Java语言程序设计(一)自考题模拟16_真题(含答案与解析)-交互

Java语言程序设计(一)自考题模拟16_真题(含答案与解析)-交互

Java语言程序设计(一)自考题模拟16(总分100, 做题时间90分钟)第Ⅰ部分选择题一、单项选择题(在每小题列出的四个备选项中只有一个是符合题目要求的。

)1.Java源文件经编译产生的文件称为______SSS_SINGLE_SELA .obj文件B .exe文件C .java文件D 字节码文件分值: 1答案:D[考点] Java编译[解析] Java源文件经编译产生的文件称为字节码文件。

2.若a是int型变量,计算表达式a=25/3%3后,a为______SSS_SINGLE_SELA 1B 2C 3D 4分值: 1答案:B[考点] Java运算[解析] 运算顺序从左到右,首先计算25/3=8,然后8%3=2。

3.下列说法正确的是______SSS_SINGLE_SELA 实例方法能对类变量和实例变量操作B 实例方法只能对类变量操作C 实例方法只能实例变量操作D 类方法能对类变量和实例变量操作分值: 1答案:A[考点] 实例方法和类方法[解析] 实例方法能对类变量和实例变量操作,而类方法只能操作类变量。

4.将有三个boolean值的数组初始化为true的是______A.boolean [ ]b=new boolean[3]B boolean [ ]b={true,true,true}C.boolean [3]b={true,true,true}D.boolean [ ]b=new boolean[3];b={true,true,true}SSS_SIMPLE_SINA B C D分值: 1答案:B[考点] 数组[解析] boolean类型的数组默认值时false,所以A不对。

声明数组时不能指定数组的大小,所以C不对。

不能给数组名赋值,数组名是个常量,是数组的引用,所以D不对。

5.若有定义Sting tom="I am a good cat";则tom.indexOf("a")的值为______ SSS_SINGLE_SELA 2B 3C 4D 5分值: 1答案:A[考点] 字符串String类[解析] String类提供的s.indexOf(String a)方法用于检测字符串s中首次出现a的位置,从零开始计算。

JAVA WEB编程技术(沈泽刚 清华大学出版社)第十二章课后习题部分解答

JAVA WEB编程技术(沈泽刚 清华大学出版社)第十二章课后习题部分解答
//BorderLayout 布局管理器,水平间隔为 5 垂直间隔为 10 BorderLayout borderLayout = new BorderLayout(5, 10);
setLayout(borderLayout); add(p1, BorderLayout.NORTH); add(p2, BorderLayout.SOUTH); } }
}
class FlowLayoutDemo extends JFrame{ public FlowLayoutDemo(){ FlowLayout flowLayout; //FlowLayout 类型的布局管理器引用变量
//该布局管理器对齐方式为左对齐,水平间隔和垂直间隔均为默认值 5 个像素 flowLayout = new FlowLayout(FlowLayout.LEFT);
}
class GridLayoutDemo extends JFrame{ public GridLayoutDemo(){ //GridLayout 布局管理器,两行三列的布局,水平间隔和垂直间隔为 5 GridLayout gridLayout = new GridLayout(2, 3, 5, 5);
import javax.swing.*; import java.awt.*;
public class Chap12_3{ public static void main(String[] args){ GridLayoutDemo gld = new GridLayoutDemo(); gld.setTitle("Chap12_3"); //设置框架标题 gld.setSize(600, 160); //设置框架大小 gld.setLocationRelativeTo(null); //设置框架在屏幕的中央 gld.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭框架时结束程序 gld.setVisible(true); //显示框架 }

Java swing布局详解(附示例图)

Java swing布局详解(附示例图)

当选择使用JPanel和顶层容器的content pane时,需要考虑布局管理。

JPanel缺省是初始化一个FlowLayout,而content pane缺省是初始化一个BorderLayout。

下面将分别介绍几种最常用的布局管理器:FlowLayout、BorderLayout、BoxLayout、CardLayout、GridLayout和GridBagLayout。

代码演示每一个布局管理器都会有一个代码演示,xxxLayoutDemo.java(见附件)。

这些文件主要有三个方法组成:addComponentsToPane()提供布局逻辑(依据不同的布局管理器和UI内容)。

Java代码1public static void addComponentsToPane(Container pane) {。

}2/**3*createAndShowGUI()实例化一个JFrame,通过它的ContentPane加载布局逻辑内容。

4*/5private static void createAndShowGUI() {6// Create and set up the window.7JFrame frame = new JFrame("FlowLayoutDemo");8frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);9// Set up the content pane.10addComponentsToPane(frame.getContentPane());11// Display the window.12frame.pack();13frame.setVisible(true);14}15//main()程序入口,单独起一个线程,实例化UI。

16public static void main(String[] args) {17javax.swing.SwingUtilities.invokeLater(new Runnable() {18public void run() {19createAndShowGUI();20}21});22}FlowLayoutFlowLayout类是最简单的布局管理器。

Java面向对象程序设计案例教程课件:图形用户界面开发与事件处理

Java面向对象程序设计案例教程课件:图形用户界面开发与事件处理

《Java面向对象程序设计案例教程》
7.2 Swing基础
• Swing组件是Java语言提供的第二代GUI设计工 具包,它以AWT为基础,在AWT内容的基础上 新增或改进了一些GUI组件,使得GUI程序功能 更强大,设计更容易、更方便。
• Swing与AWT有以下不同。
• (1) Swing是完全用Java语言编写的,所以称 Swing组件是轻量级组件,没有本地代码,不依 赖操作系统的支持,比AWT构件具有更强的实 用性。Swing在不同的平台表现一致,并且有能 力提供本地窗口系统不支持的其他特性。
《Java面向对象程序设计案例教程》 • Swing的类层次结构如图所示:
《Java面向对象程序设计案例教程》
• 3. 简单的范例 • 一个简单的Swing GUI应用程序。该程序生成一个窗
口, • 窗口中有一个标签,用于显示输出。 • (1) 程序代码: • 1. import java.awt.* ; • 2. import javax.swing.* ; • 3. public class SwingDemo • 4. { • 5. public static void main(String args[]) • 6. { • 7. JFrame fm = new JFrame("第一个Windows程序") ; • 8. JLabel label = new JLabel("这是第一个GUI程序") ;
• 教材例题7-12 利用组合框显示、选取地名。
• 教材例题8.2 ,例题8.3用不同方法生成JFrame窗口
《Java面向对象程序设计案例教程》
• 7.3.2 面板容器JPanel
• 面板JPanel也是Java中常用到的容器之一,面板是一种透明 的容器,既没有标题,也没有边框,就像一块透明的玻璃。 与JFrame不同,它不能作为最外层的容器单独存在,它首 先必须作为一个构件放置到其他容器中,然后再把它作为容 器,把其他构件放到其中。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java布局管理器setLayout()
2008-02-17 19:22
1。

FlowLayout
public FlowLayout(int align,int hgap,int vgap)
创建一个新的流布局管理器,具有指定的对齐方式以及指定的水平和垂直间隙。

对齐参数的值必须是以下之一:FlowLayout.LEFT、FlowLayout.RIGHT、FlowLayout.CENTER、FlowLayout.LEADING 或FlowLayout.TRAILING。

参数:
align - 对齐值
hgap - 组件之间以及组件与Container 的边之间的水平间隙
vgap - 组件之间以及组件与Container 的边之间的垂直间隙
2GridLayout
public GridLayout(int rows,
int cols,
int hgap,
int vgap)创建具有指定行数和列数的网格布局。

给布局中的所有组件分配相等的大小。

此外,将水平和垂直间距设置为指定值。

水平间距将置于列与列之间。

将垂直间距将置于行与行之间。

rows 和cols 中的一个可以为零(但不能两者同时为零),这表示可以将任何数目的对象置于行或列中。

所有GridLayout 构造方法都服从这一规定。

参数:
rows - 该rows 具有表示任意行数的值零
cols - 该cols 具有表示任意列数的值零
hgap - 水平间距
vgap - 垂直间距
3,BorderLayout
public BorderLayout(int hgap,
int vgap)用指定的组件之间的水平间距构造一个边界布局。

水平间距由hgap 指定,而垂直间距由vgap 指定。

参数:
hgap - 水平间距。

vgap - 垂直间距。

4,CardLayout
public CardLayout(int hgap,
int vgap)创建一个具有指定的水平和垂直间隙的新卡片布局。

水平间隙置于左右边缘。

垂直间隙置于上下边缘。

参数:
hgap - 水平间隙。

vgap - 垂直间隙。

相关文档
最新文档