程序填空题:Font类的应用
Font类是用于设置图形用户界面上的字体样式的,包括字体类型(例如宋体、仿宋、Times New Roman等)、字体风格(例如斜体字、加粗等)、以及字号大小。
如下图所示,通过点击相应的按钮,可以将显示屏中的字体做出相应的改变。
![QQ图片20221112083944.png](~/cf05dfea-9ee0-4f29-a5a8-08dd1ff0bdb4.png)
请阅读程序,并补充完善程序。
样例程序:
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Main extends JFrame{
JFrame jf=new JFrame("");//设置窗口标题
JButton jb1=new JButton("变大");
JButton jb2=new JButton("变小");
JButton jb3=new JButton("加粗");
JButton jb4=new JButton("斜体");
JLabel jLabel=new JLabel("显示屏",);//实例化标签对象,并居中对齐
public Main(){
jf.setSize(300, 200);
jf.setLayout();//设置为2行1列的网格式布局
JPanel p1=new JPanel();
JPanel p2=new JPanel();
p1.add(jLabel);
p2.setLayout(new GridLayout(2,2));
p2.add(jb1);
p2.add(jb2);
p2.add(jb3);
p2.add(jb4);
jf.add(p1);
jf.add(p2);
jb1.addActionListener(new ap());
jb2.addActionListener(new ap());
jb3.addActionListener(new ap());
jb4.addActionListener(new ap());
jf.setVisible(true);//设置窗体可见
}
public static void main(String[] args) {
new Main();
}
class ap implements ActionListener{
@Override
public void actionPerformed(ActionEvent ae) {
if(ae.getSource()==jb1){
//获取原来字体的字体名、样式、大小,并将其大小增加5个像素
Font f=new Font(jLabel.getFont().getName(),jLabel.getFont().getStyle(),);
jLabel.setFont(f);
}
if(ae.getSource()==jb2){
Font f=new Font(jLabel.getFont().getName(),jLabel.getFont().getStyle(),jLabel.getFont().getSize()-5);
jLabel.setFont(f);
}
if(ae.getSource()==jb3){
//获取原来字体的字体名、样式、大小,并将其样式设置为粗体
Font f=new Font(jLabel.getFont().getName(),,jLabel.getFont().getSize());
jLabel.setFont(f);
}
if(ae.getSource()==jb4){
Font f=new Font(jLabel.getFont().getName(),Font.ITALIC,jLabel.getFont().getSize());
jLabel.setFont(f);
}
}
}
}
答案:
第1空:Font类的应用
第2空:JLabel.CENTER
第3空:new GridLayout(2,1)
第4空:jLabel.getFont().getSize()+5
第5空:Font.BOLD
如下图所示,通过点击相应的按钮,可以将显示屏中的字体做出相应的改变。
![QQ图片20221112083944.png](~/cf05dfea-9ee0-4f29-a5a8-08dd1ff0bdb4.png)
请阅读程序,并补充完善程序。
样例程序:
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Main extends JFrame{
JFrame jf=new JFrame("");//设置窗口标题
JButton jb1=new JButton("变大");
JButton jb2=new JButton("变小");
JButton jb3=new JButton("加粗");
JButton jb4=new JButton("斜体");
JLabel jLabel=new JLabel("显示屏",);//实例化标签对象,并居中对齐
public Main(){
jf.setSize(300, 200);
jf.setLayout();//设置为2行1列的网格式布局
JPanel p1=new JPanel();
JPanel p2=new JPanel();
p1.add(jLabel);
p2.setLayout(new GridLayout(2,2));
p2.add(jb1);
p2.add(jb2);
p2.add(jb3);
p2.add(jb4);
jf.add(p1);
jf.add(p2);
jb1.addActionListener(new ap());
jb2.addActionListener(new ap());
jb3.addActionListener(new ap());
jb4.addActionListener(new ap());
jf.setVisible(true);//设置窗体可见
}
public static void main(String[] args) {
new Main();
}
class ap implements ActionListener{
@Override
public void actionPerformed(ActionEvent ae) {
if(ae.getSource()==jb1){
//获取原来字体的字体名、样式、大小,并将其大小增加5个像素
Font f=new Font(jLabel.getFont().getName(),jLabel.getFont().getStyle(),);
jLabel.setFont(f);
}
if(ae.getSource()==jb2){
Font f=new Font(jLabel.getFont().getName(),jLabel.getFont().getStyle(),jLabel.getFont().getSize()-5);
jLabel.setFont(f);
}
if(ae.getSource()==jb3){
//获取原来字体的字体名、样式、大小,并将其样式设置为粗体
Font f=new Font(jLabel.getFont().getName(),,jLabel.getFont().getSize());
jLabel.setFont(f);
}
if(ae.getSource()==jb4){
Font f=new Font(jLabel.getFont().getName(),Font.ITALIC,jLabel.getFont().getSize());
jLabel.setFont(f);
}
}
}
}
答案:
第1空:Font类的应用
第2空:JLabel.CENTER
第3空:new GridLayout(2,1)
第4空:jLabel.getFont().getSize()+5
第5空:Font.BOLD