checkboxgroup cbg = new checkboxgroup();
checkbox(string s,boolean state,checkboxgroup cbg)&checkbox(string s,checkboxgroup cbg,boolean state);/這樣可以建單選框。
checkbox(string s)用來建核取方塊與單選框。
choice()用來建下拉式單選。
frame(string s)用來建視窗。
button(string s)用來建按鈕。
label(string s)用來建標籤。
setlayout(new flowlayout());
choice c = new choice();
for(int i = 0;i < fontfamily.length;i++)
c.add(fontfamily[i]);
add(c);
c = new choice();/這樣相當於新建乙個下拉單選框。
for(int i = 0;i < size.length;i++)
c.add(size[i]+"");
add(c);
setsize(200,200);
public class testframe extends frame
public static void main(string args)
以下是乙個內部類
public class buttonhandler implements actionlistener }}
如果main中加上這個函式
f.addwindowlistener(new windowadapter()
});//就可以實現視窗關閉功能。
public class mousemovehandler implements mouselistener
public void mouseexited(mouseevent e)
public void mousepressed(mouseevent e)
public void mousereleased(mouseevent e)
public void mouseclicked(mouseevent e) }
awt提供的控制項:
button
label
checkbox
checkboxgroup
choice
textfield
textarea
list
font
image
canvas
graphics2d
dialog
scrollpanel
menu
toolkit
inputmethod
texttabbedpane = new jtabbedpane(jtabbedpane.bottom);/將標籤放在下部。
privatescrollpane = new jscrollpane();
privatetextpane = new jtextpane();
privatetextpane.seteditable(true);///這是把jtextpane設定為可以編輯的。(是否能讓使用者編輯)
// privatetextpane.setname("");//這句似乎沒什麼用。
privatescrollpane.setviewportview(privatetextpane);///jscrollpane可以顯示jtextpane上的內容。
texttabbedpane.addtab("private",privatescrollpane);//這句才是把最重要的。把jscrollpane放在jtabbedpane上。
add(texttabbedpane)///把jtabbedpane放在jframe上。
在編寫選單的時候不需寫setlayout(new flowlayout());
如果在編寫按鈕的時候不寫上面的**,那麼按鈕就會變的很大。上一行**是布局管理器。
應該始終有乙個file選單,它應該始終在選單欄的最左邊。選單項new,open...和close(如果有的話)
應該按上面的次序出現。new應該是第一項,exit應該是最後一項。
如果有edit項的話,應該為第二項,它應該有copy,paste,cut等功能。
如果有help項的話,應該是最後一項。
如果不把選單加到選單欄上,那麼選單欄就不會出現。
textarea ta = new textarea(10,20);/用於建立文字框。第乙個引數為高度,第二個為長度。
scrollbar sb = new scrollbar(scrollbar.horizontal);用於建乙個水平方向的控制條。
///有兩種布局管理器:流程布局管理器和邊框布局管理器。
setlayout(new flowlayout(flowlayout.left));這便是流程管理器
///邊框管理器是add();使用邊框管理器的容器只能有五個構件。
///add(sb,"north");//這就是邊框管理器。之前不再用setlayout(new flowlayout());
add(p,"south");//「south」一定要大寫。
//呼叫了邊框管理器後,構件的大小就不再受傳入引數的制約。如果不指明就將佔據剩餘的整個空間。
panel p = new panel();//建立新面板。
p.add(new button("hi"));
p.add(new textfield("ldldl",10));//可以將幾個構件鎖在一起。
/流程管理器可以兌現構件的優先大小。而邊框管理器不行。此外還有3個管理器:
/cardlayout(),僅允許在任何時候只有乙個構件是可見的。
gridlayout(),gridbaglayout().
menubar mb = new menubar();
setmenubar(mb);///此句用於設定選單欄。
//new jmenu("string").add(new jmenuitem("string"));選單新增選單項
///new jmenubar().add(new jmenu("string"))///選單欄新增選單
/// new jframe("string").setjmenubar(new jmenubar());/選單欄放置在窗體上。
當乙個構件和乙個paint()方法都負責螢幕的同一部分時,總是構件獲勝。
(1)建立構件。
(2)建立實現*listener介面的收聽者。
(3)構造該收聽者的乙個例項。
呼叫該構件add*listener()方法,同時傳入剛建成的收聽者類的例項。
public selflistener()
tf = new textfield(25);
add(tf);
setsize(200,300);
}public void actionperformed(actionevent e)
}使用repaint()方法可以刷屏並呼叫paint()。
當畫的圖形位置不對時,有可能在螢幕上顯示不出來。
tf.settext("font color is "+ c.getitem(c.getselectedindex())+/此處用於返回choice所選項。
". font size is " + cb[i].getlabel() );//此處用於返回checkbox所選項。
當程式啟動時paint()呼叫。當**框被完全覆蓋時,paint()被呼叫,當**框放大時,paint()被呼叫。被最小化再還原時呼叫。
//其餘時間都不會呼叫paint()。
btn[i].addactionlistener(this);
btn[i].addactionlistener(this);//此時進行兩次呼叫。點一次滑鼠有兩次動作。
///想讓乙個任意的類成為乙個動作收聽者,光實現乙個actionperformed()的方法是不夠的。因為單憑這一點不能
///認為它實現了actionlistener介面。
///當類中函式要用到其它函式中的變數時,特別是構件要宣告成類的變數而不是函式中的變數。
/publictextpane是放在publicscrollpane上的,而publicscrollpane是放在texttabbedpane上的。
/這樣使用:
publictextpane.seteditable(false);///這個面板是否可以操作。
publictextpane.setname("");//?似乎沒有什麼用。
publicscrollpane.setviewportview(publictextpane);//讓面板顯示
texttabbedpane.addtab("public",publicscrollpane);//在texttabbedpane上新增滾動條。
/ frameclient.getcontentpane().add(new jbutton(),
borderlayout.center);/這句話用於jframe新增控制項。
java類和物件
在物件導向的處理過程中,類既包括了資料也封裝了資料。類中有成員變數和成員函式,統稱為類的成員。1.類的宣告 class 繼承 2.成員變數的宣告 public class person 3.成員方法的宣告 public int gethurtpoint public void sethurtpoin...
Java類和物件
物件導向的特點 1.封裝 封裝是物件導向程式設計的核心思想。將物件的屬性和行為封裝起來,而將物件的屬性的行為封裝起來的載體就是類。類通常對客戶隱藏其實現細節,這就是封裝的思想。好處 保證類內部資料結構的完整性,應用該類的客戶不能輕易直接操縱此資料結構,而只能執行類允許公開的資料。2.繼承 繼承性主要...
java 類和物件
package cn.itcast.demo04 public class person 變數age私有化 public void setage int a else 獲取值 public int getage 複製 package cn.itcast.demo04 public class per...