JAVA 第7次作业

本文介绍了一个使用Java Swing库创建的简单图形用户界面(GUI)应用程序示例。该应用包括单选按钮和复选框控件,并演示了如何通过监听器响应用户选择的变化,将用户的兴趣和性别选择实时显示在文本区域。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


package dongzuo;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.*;
public class Window extends JFrame{
String str;
BorderLayout border;
JPanel P;
    JLabel J1,J2;
    JCheckBox cb1,cb2,cb3;
    ButtonGroup bg;
  public  JRadioButton jb1;
  public JRadioButton jb2;
    Box boxh1,boxh2;
    JTextArea textarea;
    public Window (){}
  public Window (String s)
  {   init(s);
 setVisible(true);
 setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setBounds(100, 100, 300, 300);
  }
 void init(String s){
/*整个界面的布局方式*/
GridLayout grid = new GridLayout(2,1);
  setLayout(grid);
  setTitle(s);
J1 = new JLabel("兴趣");
   J2 = new JLabel("性别");
cb1 = new   JCheckBox("羽毛球");
cb2 = new   JCheckBox("乒乓球");
cb3 = new   JCheckBox("唱歌");
/* JLabel标签,标签文本为“性别”,右边接着是两个JRadioButton按钮,选项分别是“男”、“女”。置成单选按钮*/   
bg = new ButtonGroup(); 
    jb1 = new JRadioButton("男");
jb2 = new JRadioButton("女");
    bg.add(jb1);
    bg.add(jb2);
/*两个盒型容器*/
    boxh1 = Box.createHorizontalBox();
boxh2 = Box.createHorizontalBox();
boxh1.add(J1);
boxh1.add(Box.createHorizontalStrut(1));
boxh1.add(cb1);
boxh1.add(cb2);
boxh1.add(cb3);
boxh2.add(J2);
boxh2.add(Box.createHorizontalStrut(1));
boxh2.add(jb1);
boxh2.add(jb2);
/*面板上的折叠布局方式*/
P= new JPanel();
    GridLayout grid1 = new GridLayout(2,1);
 P.setLayout(grid1);
 P.add(boxh1);
 P.add(boxh2);
add(P,BorderLayout.NORTH);
     /*窗口的CENTER区域放置一个JScrollPane容器,容器中放置一个JTextArea文本域。*/
textarea=new JTextArea();
JScrollPane jp1=new JScrollPane(textarea);
     add(jp1,BorderLayout.CENTER);
     /*事件*/
     JRadioButtonListener  lintener1 =new  JRadioButtonListener ();//listener1是监听器,事件源是JRadioButton
     jb1.addActionListener(lintener1 );
     jb2.addActionListener(lintener1);
     JCheckBoxListener listener2 = new JCheckBoxListener();//listener2是监听器,事件源是JCheckBox
     cb1.addItemListener(listener2);
     cb2.addItemListener(listener2);
     cb3.addItemListener(listener2);
 }
class  JRadioButtonListener implements ActionListener
{
   public void actionPerformed(ActionEvent arg0)
{
if (arg0.getSource()==jb1) {textarea.append("性别:男"+'\n');}
             else if (arg0.getSource()==jb2)  {textarea.append("性别:女"+'\n');}
}
}
 class JCheckBoxListener implements ItemListener
 {
public void itemStateChanged(ItemEvent arg0) {
if(cb1.isSelected()){textarea.append("兴趣:羽毛球"+'\n');}
if(cb2.isSelected()){textarea.append("兴趣:乒乓球"+'\n');}
if(cb3.isSelected()){textarea.append("兴趣:唱歌"+'\n');}
}}
}

package dongzuo;
public class Test {
public static void main(String[] args) {
Window oneview = new  Window("浏览器");
   }
}


总结:注意区分不同控件的事件处理,找好事件源,事件类型,事件监听器。

          学会界面的布局,区分各种布局方式的不同

内容概要:本文深入探讨了多种高级格兰杰因果检验方法,包括非线性格兰杰因果检验、分位数格兰杰因果检验、混频格兰杰因果检验以及频域因果检验。每种方法都有其独特之处,适用于不同类型的时间序列数据。非线性格兰杰因果检验分为非参数方法、双变量和多元检验,能够在不假设数据分布的情况下处理复杂的关系。分位数格兰杰因果检验则关注不同分位数下的因果关系,尤其适合经济数据的研究。混频格兰杰因果检验解决了不同频率数据之间的因果关系分析问题,而频域因果检验则专注于不同频率成分下的因果关系。文中还提供了具体的Python和R代码示例,帮助读者理解和应用这些方法。 适合人群:从事时间序列分析、经济学、金融学等领域研究的专业人士,尤其是对非线性因果关系感兴趣的学者和技术人员。 使用场景及目标:①研究复杂非线性时间序列数据中的因果关系;②分析不同分位数下的经济变量因果关系;③处理不同频率数据的因果关系;④识别特定频率成分下的因果关系。通过这些方法,研究人员可以获得更全面、细致的因果关系洞察。 阅读建议:由于涉及较多数学公式和编程代码,建议读者具备一定的统计学和编程基础,特别是对时间序列分析有一定了解。同时,建议结合具体案例进行实践操作,以便更好地掌握这些方法的实际应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值