一、设置字体和颜色以及绘制文本
1.1设置字体
Java语言提供Font类,用来设置文本的字体(包括字形和字号等)。
Font类提供了一个构造方法,用它来创建字体对象。构造方法格式如下:
其中,String型的 name是字形名,常用的有TimesRoman 或宋体、楷体等;int型的style是字体风格,通常 Font. PLAIN 表示正常字体,Font. BOLD 表示黑体,Font.ITALIC表示斜体;int型的size是字号,用点来表示。
1.2设置颜色
Java语言通过Color类来控制颜色。
Color类提供了13种颜色常量、两个创建颜色对象的构造方法和若干获取颜色信息的方法。颜色常量有Color. black、Color. red、Color. blue、Color. green 等。Java 语言采用 24位颜色标准,每种颜色由红、绿和蓝3个值组成,RGB取值范围为0~255。
Color类提供的两个构造方法如下:
Color(int r,int g,int b)
Color(float r1, float gl,float b1)
int型数r、g、b表示红、绿、蓝的含量,取值范围为0~255;float型数据r1、g1、bl也表示红、绿、蓝的含量,取值范围为0.0~1.0。
设置当前颜色的方法如下:
public void setColor(Color c)
1.3绘制文本
Graphics类常用的绘制文本的方法如下:
public void drawstring(String string,int x,int y)
该方法用来把指定的字符串string显示到指定的位置(x,y),这里(x,y)是字符串的左下角起点。
演示如下:
package com.hg.day26.demo01;
import javax.swing.*;
import java.awt.*;
public class JDialogTest extends JDialog{
public static void main(String[] args) {
JDialog jd = new JDialog();
jd.setVisible(true);
jd.setBounds(200,200,400,600);
Container c = jd.getContentPane();//获取窗体容器
c.add(new JLabel("这是一个标签"));
}
}
运行结果:
演示如下:
package com.hg.day26.demo01;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class JDialogTest2 extends JDialog {
public JDialogTest2(JFrame frame){
super(frame,"对话框标签",true);
setVisible(true);//设置窗体可见
setBounds(100,100,100,100);
}
public static void main(String[] args) {
JFrame f = new JFrame("父窗体");
f.setBounds(50,50,300,300);
Container c = f.getContentPane();
JButton btn = new JButton("弹出对话框");
c.setLayout(new FlowLayout());
c.add(btn);
f.setVisible(true);
f.setDefaultCloseOperation(EXIT_ON_CLOSE);
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JDialogTest2 jd = new JDialogTest2(f);
jd.setVisible(true);
}
});
}
}
运行结果:
演示如下:
package com.hg.day26.demo01;
import javax.swing.*;
import java.awt.*;
public class jFrameTest extends JFrame{
public jFrameTest(){
JFrame f = new JFrame("大数据五班");//创建窗体对象,可在参数中设置窗体标题
//设置窗体可见
f.setVisible(true);
//注意:点击关闭没有结束程序运行
// EXIT_ON_CLOSE:影藏窗体、并停止程序
// DO_NOTHING_ON_CLOSE:无任何操作
// HIDE_ON_CLOSE:影藏窗体,但是不停止运行
// DISPOSE_ON_CLOSE:释放窗体资源
f.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
// f.setLocation(200,600);//设置位置,单位是像素,从左上角0.0开始
// f.setSize(444,300);//设置大小,单位:像素
setBounds(200,200,400,300);
Container c = f.getContentPane();
c.setBackground(Color.pink);//设置背景颜色
JLabel l = new JLabel("自动登录");
c.add(l);//添加组件
//c.remove(l);//移除组件
c.validate();
// f.setContentPane(c);
f.setResizable(true);
System.out.println("x="+getX()+"y="+getY());
}
public static void main(String[] args) {
new jFrameTest();
}
}
运行结果: