❶ GUI程序設計(java)
自己作業自己不做還一分不給,真好意思!
❷ Java GUI編程題求解(還存在一點問題)
在public void paint(Graphics g)
下加上
{
super.paint(g);
.......
....
}
加上這句後才能調用父類,
1。 因為用的是swing里的JFrame(子類)。
2。 所以重繪時,只是重繪窗口邊框和paint方法里的東西,窗口的背景並沒有顯示,所以看到窗口是所謂透明。(只是沒繪制)
3。 repaint後上一幀圖片不會自動清除,而是與下一幀重疊。
簡單,往往才是精髓。給分吧!
❸ java GUI編程中的問題
getSource返回的是產生事件的那個對象,一般是只有在需要知道特定的產生事件對象時,才用到,比如 先通過 event.getSource() instanceof SomeClass 判斷是否是某個類型的對象, 然後強制轉換獲取該對象的引用再進行操作:
SomeClass obj = (SomeClass)event.getSource();
obj.doSomething();//調用某個方法
❹ 簡單的GUI編程java編寫
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JOptionPane;
public class TestGUI extends Frame{
private TextField tf = null;
private Button btn = null;
public static void main(String[] args) {
new TestGUI().init();
}
public void init() {
//窗口關閉事件
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
setLayout(new FlowLayout());
tf = new TextField(15);
btn = new Button("計算");
//按鍵響應事件
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String s = "你輸入字元的個數為:" + tf.getText().length();
//彈窗顯示結果
JOptionPane.showMessageDialog(null,s);
}
});
add(tf);
add(btn);
setBounds(400, 300, 400, 300); //設置窗體的位置和尺寸
setVisible(true);
}
}
❺ Java實現GUI編程基本方法都有那些
典型的包括窗口(Window)、框架(Frame/JFrame)、對話框(Dialog/JDialog)、面板(Panel/JPanel)等。只有先創建了這些容器,其它界面元素如按鈕(Button/JButton)、標簽(Label/JLabel)、文本框(TextField/JTextField)等才有地方放。
②添加組件
為了實現GUI應用程序的功能,為了與用戶交換,需要在容器上添加各種組件/控制項。這需要根據具體的功能要求來決定用什麼組件。例如,如果需要提示信息,可用標簽(Label/JLabel);如果需要輸入少量文本,可用文本框(TextField/JTextField);如果需要輸入較多文本,可用文本區域(TextArea/JTextArea);如果需要輸入密碼,可用密碼域(JPasswordField)等等。
③安排組件
與傳統的Windows環境下的GUI軟體開發工具不同,為了更好地實現跨平台,Java程序中各組件的位置、大小一般不是以絕對量來衡量,而是以相對量來衡量。例如有時候,程序的組件的位置是按"東/East"、"西/West"、"南/South"、"北/North"、"中 /Center"這種方位來標識的。因此,在組織界面時,除了要考慮所需的組件種類外,還需要考慮如何安排這些組件的位置與大小。這一般是通過設置布局管理器(Layout Manager)及其相關屬性來實現的。事實上上述按方位來安排組件就是採用了Java中多種布局管理器里的BorderLayout布局管理器。
為了完成一個GUI應用程序所應具備的功能,除了適當地安排各種組件產生美觀的界面外,還需要處理各種界面元素事件,以便真正實現與用戶的交換,完成程序的功能。在Java程序中這一般是通過實現適當的事件監聽者介面來完成的。
❻ 關於JAVA GUI的簡單編程題 急急急急急~~~~
這個嘛 你那裡代碼不明白 我給你說嘛 不要讓別人幫你做
我說下思路 自己動手才有收獲嘛
你聲明一個arraylist 聲明成類變數 也就是定義在類中 而不是方法里
這個變數可以是static的
如list list=new ArrayList();
在add事件里
用text1.getValue()得到值
list.add(text1.getValue());
delete 的事件 就簡單了
list.remove(t1.getValue())
display 的事件 也簡單
大的文本框 你用循環的方式添加
for(int i=0;i<list.size();i++){
list.get(i) 就是一個值
text2(大的文本框)添加 什麼方法添加的 自己看看 我很久沒搞過這個了 方法都忘記了
}
❼ 使用Java的GUI圖形用戶界面編程設計並編寫一個計算器程序
進口的java.awt.BorderLayout;
進口java.awt.GridLayout中;
進口java.awt.event.ActionEvent;
進口java.awt.event.ActionListener;
進口的javax。 swing.JButton;
進口javax.swing.JFrame中;
進口javax.swing.JPanel;
進口javax.swing.JTextField中;
/ /暫時不考慮這個問題甚至添加
/ /點的第二個操作點的操作員點運算符點=結果
公共類計算器實現的ActionListener {
> JTextField的JTF =新的JTextField(10);
私人布爾追加= FALSE;
私人字元串OP1 =「0」;
私人字元串運算符=「+」;
@覆蓋
公共無效的actionPerformed(ActionEvent的E){
字元串COMN = e.getActionCommand();。!
/ /處理數字
如果(「0123456789」的indexOf(COMN)= -1){
如果(追加){/ /追加
字元串溫度= jtf.getText() ;
jtf.setText(溫度+ COMN);
}其他{/ /替換
jtf.setText(COMN);
追加= TRUE;
/ /處理運營商
否則,如果(「+ - * /」的indexOf(COMN)= -1){
OP1 = JTF。的getText();
運算符= COMN;
追加= FALSE;
的} else if(「=」的indexOf(COMN)= -1。){
字元串OP2 = jtf.getText();
雙D1 = Double.parseDouble(OP1);
雙D2 = Double.parseDouble(OP2);
如果(「+」等於(操作者)。){
D1 = D1 + D2;
}否則,如果(「 - 」等於(操作員)。){
D1 = D1 - D2;
}否則,如果(「*」的equals(操作員)。){
D1 = D1 * D2;
的} else if(「/」等於(操作者)。){
D1 = D1 / D2;
jtf.setText(D1 +「」);
追加= FALSE;
}否則,如果(等於(COMN)「。」){
字元串溫度= jtf.getText();
如果(temp.indexOf(「;」)== -1){
jtf.setText(溫度+「。」);
追加= TRUE;
否則,如果(「+ / - 」的equals(COMN)){
字元串溫度= jtf.getText();
如果(temp.startsWith(「-1」)){
JTF。的setText(temp.substring(1));
}其他{
jtf.setText(「 - 」+溫度);
否則,如果(「退格」。等於(COMN)){
字元串溫度= jtf.getText();
如果(temp.length()> 0){
jtf.setText(temp.substring(0,temp.length() - 1)); ..
}
的} else if(「CE」等於(COMN)| |「C」等於(COMN)){
jtf.setText(「0」);
追加= FALSE;
公眾計算器(){
JFrame的JF =新的JFrame(「計算器」);
jf.add(JTF,BorderLayout.NORTH);
字串[] S1 = {「退格」,「CE」,「C」,「+」,「7」,「8」,「9」,「/」,「4」,
「5」,「6」,「*」,「1」,「2」,「3」,「 - 」,「0」,「+ / - 」,「」,。 「=」};
的JPanel JP =新的JPanel();
jf.add(JP,使用BorderLayout.CENTER);
網格布局GL =新的網格布局(5,4); jp.setLayout(GL);
JButton的[] JB =新的JButton [s1.length];
為(int i = 0;我<s1.length,我+ +){
JB [我] =新的JButton(S1由[i]);
jp.add(JB由[i]);。
JB [I] addActionListener方法,(這);
} jf.add(JP);
jtf.setEditable(假);
jf.setLocation(400,300);
jf.pack();
jf.setResizable(假);/ /設置窗口不可改變
jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE);
jf.setVisible(真);
公共靜態無效的主要(字串[] args){
新的計算器();
這個函數比較簡單,不知道能不能滿足要求
❽ 如何開發JAVA的GUI程序
步驟:
1、 引包
import java.awt.*; import javax.swing.*;
2、 繼承JFrame
public class Demo3 extends JFrame {}
3、 定義需要的組件
//3.定義組件
JButton jb1,jb2,jb3,jb4,jb5; int size=9;
JButton jbs[]=new JButton[size]; //先分配初始空間 4、 創建組件
//4.創建組件 jb1=new JButton("中部"); //創建組件
for(int i=0;i<size;i++) {
jbs[i]=new JButton(String.valueOf(i));
}
5、 設置布局管理器
//設置布局管理器,默認是的邊界布局管理器 this.setLayout(new FlowLayout(FlowLayout.LEFT));//流式布局 this.add(jb1,BorderLayout.CENTER); //邊界布局 this.setLayout(new GridLayout(3,3,10,10)); //網格布局
this.setLayout(null); //取消布局管理器
6、 添加組件
//添加組件 this.add(jb1);
this.add(jb2);
7、 設置窗體屬性
//設置窗體屬性 this.setTitle("流式布局案例"); //設置窗體標題 this.setSize(300, 200); //設置窗體大小 this.setLocation(200, 400); //設置初始位置
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //關閉窗體時關閉虛擬機
//禁止用戶改變窗體大小
this.setResizable(false); //7.顯示窗體
this.setVisible(true);
8、 顯示窗體
利用數組創建組件:
//定義組件 int size=9;
JButton jbs[]=new JButton[size]; //數組要先分配初始空間 //創建組件
for(int i=0;i<size;i++) { jbs[i]=new JButton(String.valueOf(i));
}
//添加組件 for(int i=0;i<size;i++) { this.add(jbs[i]);