试着发一篇博文.
package com.dusker.calc;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
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.JPanel;
import javax.swing.JTextField;
public class TestCalc extends JFrame implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
/**
* @param args
*/
JPanel p1=null;
JPanel p2=null;
JPanel p3=null;
public static void main(String[] args) {
new TestCalc().layOut();
}
public void layOut() {
p1 = new JPanel(new FlowLayout());
JButton backButton = new JButton("BackSpace");
JButton clearButton = new JButton("Clear");
p1.add(backButton);
p1.add(clearButton);
p2 = new JPanel(new GridLayout(2,1));
JTextField text = new JTextField();
p2.add(text);
p2.add(p1);
p3 = new JPanel(new GridLayout(4,5));
String buttonStr = "789/A456*B123-C0D.+=";
for(int i=0;i<buttonStr.length();i++) {
this.addButton(p3, buttonStr.substring(i,i+1));
}
this.setLocation(500, 200);
this.setSize(300,330);
this.setTitle("计算器");
this.setLayout(new BorderLayout());
this.add(p2,BorderLayout.NORTH);
this.add(p3,BorderLayout.CENTER);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setResizable(false);
this.setVisible(true);
}
private void addButton(Container c,String s) {
JButton b = new JButton(s);
if(s.equals("A")) {
b.setText("sqrt");
}
if(s.equals("B")) {
b.setText("%");
}
if(s.equals("C")) {
b.setText("1/x");
}
if(s.equals("D")) {
b.setText("+/-");
}
c.add(b);
b.addActionListener(this);
}
public void actionPerformed(ActionEvent arg0) {
}
}
分享到:
相关推荐
首先,让我们了解Java布局管理器。Java Swing提供了多种布局管理器,包括 FlowLayout、GridLayout、BorderLayout、CardLayout 和 GroupLayout。在本例中,由于我们需要创建一个日历视图,可能最适合使用的布局管理器...
【Java边界布局管理器详解】 Java中的边界布局管理器(BorderLayout)是窗口管理器的一种,主要用于组织和控制Swing或AWT组件在容器内的排列方式。它将容器分为五个区域:东(EAST)、西(WEST)、南(SOUTH)、北...
- 使用`FlowLayout`布局管理器。 - 定义了三个按钮(`ok`, `delete`, `exit`)和两个文本框(`j1`, `j2`)以及两个标签(`l1`, `l2`)。 2. **监听器类 `TestListener`**: - 实现了`ActionListener`接口。 - 在`...
相比AWT,Swing组件提供了更多的定制选项和更好的用户体验,比如内置的布局管理器和模型-视图-控制器架构,这使得在MIS系统中设计复杂的用户界面变得更加便捷。 在学生MIS管理系统练习中,你可能会学到如何使用这些...
4. **布局与显示**:程序使用`FlowLayout`布局管理器,并设置窗口大小为250x160像素,不可调整大小。 5. **实例化与展示**:最后通过创建`AnonyTest`对象并调用其`setVisible(true)`方法使窗口可见。 #### 五、...
JFrame、JButton、JLabel等是常见的组件,通过布局管理器如FlowLayout、GridLayout和BorderLayout来组织它们。 3. **网络编程**: Java的Socket编程允许创建客户端-服务器应用,实现数据的发送和接收。Socket类和...
20. Java中Panel的默认布局管理器是FlowLayout,它允许组件按顺序排列。 21. Java不支持传统意义上的多重继承,但可以使用接口来模拟多重继承的效果,因为一个类可以实现多个接口。 22. Java中char类型的取值范围...
开发者需要掌握如何创建窗口、布局管理器、事件监听器等,以便用户可以与游戏进行交互,如点击棋子进行移动。 在游戏逻辑部分,源码会包含一系列算法来处理棋盘上的移动和检查。华容道的解法通常涉及深度优先搜索...
本练习项目“Java练习之贪吃蛇(layout实现)”就是基于Java的GUI功能,特别是布局管理器,来实现一个经典的贪吃蛇游戏。 在Java GUI中,布局管理器是一个关键的概念,它负责自动调整组件的位置和大小以适应容器的...
综上所述,这个简单的打字练习程序不仅涵盖了 Java Swing 的基本组件和布局管理,还涉及到了事件处理、菜单条、对话框等多种高级特性。对于初学者来说,这是一个非常好的学习项目,可以帮助他们深入了解 Swing 框架...
答案会涵盖如何使用布局管理器、事件处理等构建交互式界面。 十、JDBC数据库连接 Java通过JDBC(Java Database Connectivity)可以连接到各种数据库。练习题可能涉及建立连接、执行SQL查询、处理结果集等。答案会...
6. **GUI布局**:使用诸如GridLayout、BoxLayout或BorderLayout等布局管理器,合理组织组件在窗口中的位置。 7. **用户反馈**:在用户完成练习后,展示他们的成绩,可以使用JOptionPane弹出对话框显示正确率和其他...
对于UI部分,熟悉GUI组件的使用和布局管理是必要的。在实际操作中,你可能会遇到异常处理的问题,学会如何优雅地捕获和处理错误是提高代码稳定性的关键。 总的来说,这个"java练习源码"提供了一个实践Java基础知识...
【标题】:“利用网格布局写的一个java计算器” ...对于有一定经验的开发者,它也是一个很好的练习,可以用来复习基础,或者探索更高级的特性,如自定义布局管理器或使用MVC(模型-视图-控制器)设计模式。
本练习项目是一个简单的石头剪刀布游戏,通过使用相对布局,初学者可以深入理解其工作原理和实际应用。 相对布局的优势在于它可以更直观地定义视图之间的相对位置关系,比如“位于父视图的左上角”、“居中于另一个...
Swing组件之间通常需要配合布局管理器(Layout Managers)使用,来实现对组件的精确布局。本指法练习小游戏的设计使用了JFrame作为顶层容器,通过JMenuBar添加JMenu和JMenuItem来构建游戏菜单栏,以及JPanel用于显示...
在这个小练习中,可能使用了GridLayout来让数字和操作符按钮排列成网格状,而JFrame的默认布局管理器BorderLayout可能会用来放置结果显示区域。 - Swing的事件模型:Swing采用的是基于发布-订阅的事件模型,组件...
Swing也提供了很多布局管理器,可以方便地实现不同风格的界面布局。 JavaFX是Java 8及以后版本引入的新一代GUI库,它具有更强大的功能和更好的性能。JavaFX可以用来创建丰富的图形化用户界面和多媒体应用程序。...
在这个"Java Swing练习中的基础代码"中,我们可以看到几个简单的界面示例,这些示例可以帮助初学者理解Swing的基本组件和布局管理。 1. **CompsDemo.java**:这个文件可能包含了Swing组件的演示,如JButton、JLabel...
Swing提供了几种布局管理器,如FlowLayout、BorderLayout、GridLayout和BoxLayout,用于控制组件在窗口中的排列方式。例如,我们可能会使用BorderLayout将菜单栏放在北边,文本区域放在中心。 6. **对话框** ...