Java第5周实验
来源:互联网 发布:市场分析软件 编辑:程序博客网 时间:2024/05/29 16:58
第5周:GUI编程和JDK API的使用
1、字体设置,P183例9-3字体设置,尝试添加一个文本框TextField,把目前选择的字体的名字,显示在文本框中。(类名:FontSet)
2、《Java语言程序设计》P443程序清单16-6贷款计算器。(类名:LoanCalculator)
//P183 例9-3字体设置import java.awt.Container;import java.awt.Font;import java.awt.Graphics;import javax.swing.JFrame;import javax.swing.JPanel;public class FontSet{public static void main(String args[]){FontFrame frame=new FontFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}}@SuppressWarnings("serial")class FontFrame extends JFrame{public FontFrame(){setTitle("设置字体");setSize(WIDTH,HEIGHT);FontPanel panel=new FontPanel();//将panel加入到FrameContainer contentPane=getContentPane();contentPane.add(panel);}public static final int WIDTH=300;//显示框的大小public static final int HEIGHT=140;}@SuppressWarnings("serial")class FontPanel extends JPanel{public void paintComponent(Graphics g){super.paintComponent(g);//设置字体Font f=new Font("宋体",Font.BOLD+Font.ITALIC,20);g.setFont(f);//显示文字int x=0,y=0;g.drawString("Java欢迎您!",x,y);}public int x=55;public int y=50;}
//贷款计算器import java.awt. *;import java.awt.event. *;import java.io.File;import java.util.concurrent.locks.Lock;import javax.swing. *;import javax.swing.border.TitledBorder;import javax.swing.text.JTextComponent;@SuppressWarnings({ "unused", "serial" })public class LoanCalculator extends JFrame{private JTextField jtfAnnualInterestRate=new JTextField();private JTextField jtfNumberOfYears=new JTextField();private JTextField jtfLoanAmount=new JTextField();private JTextField jtfMonthlyPayment=new JTextField();private JTextField jtfTotlePayment=new JTextField();private JButton jbtComputeLoan=new JButton("Compute Payment");public LoanCalculator (){JPanel p1=new JPanel(new CardLayout(5,2));p1.add(new JLabel("Annual Interest Rate"));p1.add(jtfAnnualInterestRate);p1.add(new JLabel("Number Of Years"));p1.add(jtfNumberOfYears);p1.add(new JLabel("LoanAmount"));p1.add(jtfLoanAmount);p1.add(new JLabel("Monthly Payment"));p1.add(jtfTotlePayment);p1.add(new JLabel("Totle Payment"));p1.add(jtfTotlePayment);p1.setBorder(new TitledBorder("Enter Loan amount,interest rate,and year"));JPanel p2=new JPanel(new FlowLayout(FlowLayout.RIGHT));add(p1,BorderLayout.CENTER);add(p2,BorderLayout.SOUTH);jbtComputeLoan.addActionListener((ActionListener) new ButtonListener());}}class ButtonListener implements ActionListener{@SuppressWarnings("null")public void actionPerformed1(ActionEvent e){JTextComponent jtfAnnualInterestRate = null;double interest=Double.parseDouble(jtfAnnualInterestRate.getText());JTextComponent jtfNumberOfYears = null;int year=Integer.parseInt(jtfNumberOfYears.getText());JTextComponent jtfLoanAmount = null;@SuppressWarnings("unused")double amount=Double.parseDouble(jtfLoanAmount.getText());Object loadAmount = null;@SuppressWarnings("unused")Object loanAmount;@SuppressWarnings("unused")File fileinput = new File("E:\\Loan.txt"); Loan loan=new Loan(interest,year,loadAmount);@SuppressWarnings("unused")File fileoutput = new File("E:\\Loan.txt"); JTextComponent jtfMonthlyPayment = null;jtfMonthlyPayment.setText(String.format("%.2f",loan.getMonthlyPayment()));JTextComponent jtfTotlePayment = null;jtfTotlePayment.setText(String.format("%.2f",loan.getTotlePayment()));}public static void main(String args[]){LoanCalculator frame=new LoanCalculator();frame.pack();frame.setTitle("LoanCalculator");frame.setLocationRelativeTo(null);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}@Overridepublic void actionPerformed(ActionEvent arg0) {// TODO Auto-generated method stub}}
0 0
- Java第5周实验
- Java--第15周实验--
- Java第2周实验
- Java第3周实验
- Java第4周实验
- Java第6周实验
- Java第7周实验
- Java实验第一天
- JAVA实验第三天
- JAVA实验第三天
- JAVA实验第一天
- C#第5周实验
- Java第四周实验报告
- 第5周实验报告任务一
- 第5周实验报告任务1.3
- 第5周实验报告任务1.4
- 第5周实验报告任务2
- 第5周实验指导1
- (48)Java中没有main方法也能运行输出的一种特例
- cc、gcc、g++、CC的区别概括
- PE文件格式
- 渣渣算法回顾---最小生成树之Prim算法
- css中的层叠特性--选择器优先级
- Java第5周实验
- 毕业四年
- ICP算法解析
- ABAP中产生随机数的函数
- 学编程1
- 【栈操作&括号匹配】Valid Parentheses
- 操作符重载
- POJ 3207 2SAT入门
- 数据结构2:线性表的链表表示和实现