首先你還是弄一個新的panel 來將“確定”“取消”兩個按鈕重新排布好吧,由于只有兩個按鈕這么簡單我下面的程序用GirdLayout了,
創(chuàng)新互聯(lián)是專業(yè)的桂東網站建設公司,桂東接單;提供成都網站建設、網站設計,網頁設計,網站設計,建網站,PHP網站建設等專業(yè)做網站服務;采用PHP框架,可快速的進行桂東網站開發(fā)網頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網站,專業(yè)的做網站團隊,希望更多企業(yè)前來合作!
例如:JPanel panel = new JPanel();
panel.setLayout(new GridLayout(1,2));
panel.add(bw);
panel.add(bc);
然后再在你的Frame jp 里面加入這個panel,就可以了。按照你的設定就是用BorderLayout把它加到中間去吧? 北面的就是你原來做好的那些部分..(雖然不是很優(yōu)化,不過先不管了...)
例如:fr.getContentPane().add("North",jp);
fr.getContentPane().add("Center",panel);
整條程序就是:(注意我改了包的名字和類的名字,你要改回來, 這里的參數也改了一下,符合我自己的審美觀 : fr.setSize(450, 200); )
package src;
/**
* @author Raven Denesis
* @version 1.0
*/
import java.awt.*;
import java.awt.event.*;
import java.util.Map;
import javax.swing.*;
public class Jpassword {
private JFrame fr = new JFrame("登陸界面");
private JTextField user = new JTextField(20);
private JPasswordField pwd = new JPasswordField(10);
private JTextArea ta = new JTextArea(5,10);
private JButton bw = new JButton("確定");
private JButton bc = new JButton("取消");
Font ft = new Font ("serf",Font.BOLD,28);
JPanel jp = new JPanel (new GridLayout(2,3,10,10));
public static void main(String[] args){
Jpassword than = new Jpassword();
than.go();
}
void go(){
fr.getContentPane().setLayout(new BorderLayout(0,10));
JLabel u1 =new JLabel("用戶名: ",JLabel.LEFT);
jp.add(u1);
jp.add(user);
JLabel pl = new JLabel("用戶密碼: ",JLabel.LEFT);
jp.add(pl);
jp.add(pwd);
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(1,2));
panel.add(bw);
panel.add(bc);
fr.getContentPane().add("North",jp);
fr.getContentPane().add("Center",panel);
u1.setFont(ft);
pl.setFont(ft);
user.setFont(ft);
pwd.setFont(ft);
//user.addActionListener(new ActionListener());
//pwd.addActionListener(new TextHandler());
fr.setSize(450, 250);
fr.setVisible(true);
fr.setLocation(200, 200);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
abstract class TextHandler implements ActionListener
{
int sel;
TextHandler(int sel)
{
this.sel = sel;
}
}
public void actionPerformed(ActionEvent e)
{
String uname,upass;
uname = user.getText();
upass = new String(pwd.getPassword());
ta.setText("用戶名: "+"\n"+"密碼: "+upass);
}
}
運行結果:
這樣的排版你覺得還可以吧?
還有你的按鈕bw和bc還沒有加到.addActionListener(new ActionListener()); 里,這樣的話按鈕就算按下去都沒反應...不過你稍后應該會加的了吧,我想就不用另行說了....
1.首先寫每個Button的監(jiān)聽事件
2.在監(jiān)聽事件中寫刪除公共方法
public
void
remove(){
具體代碼你自己填吧,
可以是b[i].remove();刪除掉,
也可以是將數組b[i]要刪除的項后面那個b[i+1]前移一位,替代b[i]
}
script type="text/javascript"
function ckAll(sign){
var allCk = document.getElementsByTagName("input");
for(i=0;iallCk.length;i++){
if(allCk[i].type=="checkbox"){
if(sign=="all")
allCk[i].checked = true;
else
allCk[i].checked = false;
}
}
}
/script
input type="button" onclick="ckAll('all')" value="全選"/
input type="button" onclick="ckAll('none')" value="取消"/
ps:如果"全選"與"取消"也想用單選按鈕的話,判斷一下吧。
script type="text/javascript"
function ckAll(obj){
var allCk = document.getElementsByTagName("input");
for(i=0;iallCk.length;i++){
if(allCk[i].type=="checkbox"){
if(obj.value=="all"){
if(allCk[i].value!="none")
allCk[i].checked = obj.checked;
else
allCk[i].checked = !obj.checked;
}else{
if(allCk[i].value!="none")
allCk[i].checked = !obj.checked;
}
}
}
}
/script
input type="checkbox" onclick="ckAll(this)" value="all"/全選
input type="checkbox" onclick="ckAll(this)" value="none"/取消
ps:用一個單選按鈕更簡潔
script type="text/javascript"
function ckAll(obj){
var allCk = document.getElementsByTagName("input");
for(i=0;iallCk.length;i++){
if(allCk[i].type=="checkbox"){
allCk[i].checked = obj.checked;
}
}
}
/script
input type="checkbox" onclick="ckAll(this)"/全選
一樓的需要添加jQuery庫,二,三樓的說話說一半。。
public?class?Demo?extends?JFrame
{
JButton?jb;?//一個按鈕
public?static?void?main(String?[]args){
new?Demo();
}
public?Demo()
{
this.setLayout(new?FlowLayout());
jb=new?JButton("按扭");
this.add(jb);
this.setSize(400,300);
this.setVisible(true);
this.setLocation(500,?200);
}
}
監(jiān)聽按鈕,當按鈕被點擊時,就退出。代碼如下:
jb_button.addMouseListener(new MouseAdapter() { // 對jb_button按鈕添加監(jiān)聽事件
@Override
public void mouseClicked(MouseEvent e) { // 當鼠標點擊時
System.exit(0); // 退出
}
});
單選按鈕的概念是:在一組單選按鈕選項中,只能選中其中一項,這和復選框是不同的。意思就是必須有一個是為選中狀態(tài)的,你要是想設置成都可以不選中,我建議你使用checkbox復選框來實現