首页 > 编程知识 正文

c# java,无基础编程入门

时间:2023-05-03 22:20:20 阅读:53428 作者:1617

要在java中创建GUI,有两个工具包: AWT和Swing。

Swing是AWT的扩展,Swing比AWT有更丰富的组件和方法。

可以在跨平台上使用AWT和Swing。awt的UI样式因系统平台而异,但swing则不然。 设计完成后,所有平台上的样式都匹配。

import java.awt.*;

import javax.swing.*;

@H_404_8@一个awt样本

以下是一个窗口示例

import java.awt.*;

publicclassmyframeextendsframe {

公共我的帧() {

super (测试);

setsize (400,200;

设置可见(true;

}

publicstaticvoidmain (string args [ ] ) {

新my frame (;

}

}

创建继承Frame的窗口,并继承Frame的几种方法;

帧中:

super方法可以设置窗口标题;

设置setSize窗口大小。 (width,hight ) )。

setVisible设置是否显示窗口,true显示,false隐藏

设置布局(新流量) ); 用于设定窗口布局;

添加(组件); 用于将按钮等组件添加到窗口中。

在窗口中添加组件

import java.awt.*;

publicclassmyframeextendsframe {

公共我的帧() {

super (测试);

设置布局(新流量) );

buttonBTN=newButton('Button );

Font f=new Font ('宋体',Font.BOLD,28 );

BTN.setfont(f;

添加(BTN );

setsize (400,200;

设置可见(true;

}

用main方法启动窗口

publicstaticvoidmain (string args [ ] ) {

新my frame (;

}

活动

在java中,事件分为三个方面进行描述。

事件源:发生事件的对象

事件处理:委托事件处理模型

事件侦听器:负责处理事件

首先,b监听a,设定监听的内容,设定应答内容。

a自身状态改变时,触发c;

c执行d

妈妈对儿子说,做完你的作业后,妈妈会给爸爸削苹果给你吃。

母亲:事件监视者

儿子:案源

动作:完成作业

事件:爸爸削苹果给了儿子

妈妈监视儿子,监视作业是否完成。 安装工作完成后,触发活动:削苹果;

儿子完成作业,状态改变,事件触发; 事件开始执行。

简而言之,b告诉a,如果a怎么样,就去做一件事c。

实现事件流

继续利用上面的窗口,实现在点击按钮时改变窗口的背景颜色。

实现一个事件

引进

导入Java.awt.event.action listener;

实现接口

classtestimplementsactionlistener {

公共语音性能(活动事件活动) {

System.out.println ('运行作业');

}

在控件中注册事件

package com.company;

import java.awt.*;

import Java.awt.event.actionevent;

导入Java.awt.event.action listener;

publicclassmyframeextendsframeimplementsactionlistener {

公共我的帧() {

super (测试);

设置布局(新流量) );

buttonBTN=newButton('Button );

Font f=new Font("宋体",28);

btn.setFont(f);

btn.addActionListener(this::actionPerformed);

add(btn);

setSize(400,200);

setVisible(true);

}

public void actionPerformed(ActionEvent actionEvent) {

System.out.println("执行工作");

setBackground(Color.BLUE);

}

}

按钮有个事件监听器 addActionListener,我们将要执行的工作 actionPerformed 绑定进去。

当条件发生时,就会触发此工作。

妈耶,我都不知道自己在说啥了。

C# 中,事件没有那么麻烦,也不需要这么BB。。。

另外, actionEvent ,有两个常用方法

actionEvent.getActionCommand();// 获取对象名称

actionEvent.getSource()();// 获取源对象

布局

AWT 中,主要有 6 中布局方式。

FlowLayout 流式布局

默认布局,控件从上到下,从左到右地排序。

BorderLayout 边缘布局

自动停靠窗体边缘,并且长宽随着窗体的变化。

GridLayout 网格布局

将容器分成若干行和若干列。

CradLayout 卡片布局

像扑克牌一样,每张牌是一个控件,多个控件叠加起来,每次只能查看一个。

GridBagLayout 网格块布局

null 采用坐标定位布局

创建一个窗体,并设置流式布局

public class MyFrame extends Frame {

public MyFrame(){

super("测试");

setLayout(new FlowLayout());

}

}

继承 Frame 的窗体中,使用 setLayout方法 可以设置布局。

组件方法

如图是 GUI 控件中常用的控件关系继承图。

组件分为容器(Container)和控件。

容器又分为窗体(Window)和面板(Panel)。

Component 是所有组件的父类,Component 常用方法如下

Component类(抽象类)主要方法

Color getBackground() : 获取部件的背景色

Font getFont() : 获取部件的显示字体

Graphics getGraphics(): 获取部件的Graphics属性对象

void setBackground(Color c) : 设置部件的背景

void setEnabled(boolean b) : 是否让部件功能有效

void setFont(Font f) : 设置部件的显示字体

void setSize(int width,int height) : 设置部件大小

void setVisible(boolean b) : 设置部件是否可见

void setForeground(Color c) : 设置部件的前景色

Tookit getToolkit() : 取得图形部件的工具集(Toolkit)

void requestFocus() : 让部件得到焦点

void add(PopupMenu popup) :给部件加入弹出菜单

常用控件

文本

文本框(TextField)只能显示一行文本,文本域(TextArea)则可以显示、编辑多行文字。

文本框的构造函数如下

TextField():构造一个单行文本输入框。

TextField(int):指定长度的单行文本输入框。

TextField(String):指定初始内容的单行文本输入框。

TextField(String,int):指定长度、指定初始内容。

文本域的构造函数如下

TextArea( ):构造一个文本域。

TextArea(int,int):构造一个指定长度和宽度的文本域。 TextArea(String):构造一个显示指定文字的文本域。

TextArea(String,int,int):按指定长度、宽度和默认值构造文本域。

文本控件的常用方法有

void setEchoChar(‘*’) 设置回显字符

String getText( ) :获取输入框中的数据

void setText(String s) :往输入框写入数据

boolean isEditable( ):判断输入框是否可编辑。

void select(int start,int end):选定由开始和结 束位置指定的文本。 void selectAll( ):选定所有文本。

文本域(TextArea)中,还具有以下两个常用方法

append(String s):将字符串添加到文本域的末尾

insert(String s,int index):将字符串插入到文本域的指定位置

文本框有两个常用事件

ActionEvent事件

在文本框按回车键时引发

注册:addActionListener() 接口:ActionListener

方法:public void actionPerformed(ActionEvent e)

TextEvent事件

对文本输入部件数据更改操作 (添加、修改、删除)

注册: addTextListener()

接口:TextListener

方法: public void textValueChanged(TextEvent e)

相关文章

总结

以上是编程之家为你收集整理的java GUI 快速入门全部内容,希望文章能够帮你解决java GUI 快速入门所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。