按鈕只能是個(gè)矩形,按你是意思,應(yīng)該是不顯示按鈕的邊框,只顯示圖標(biāo)是吧。
創(chuàng)新互聯(lián)建站是一家專業(yè)從事成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計(jì)公司,作為專業(yè)的成都網(wǎng)站建設(shè)公司,創(chuàng)新互聯(lián)建站依托強(qiáng)大的技術(shù)實(shí)力、以及多年的網(wǎng)站運(yùn)營經(jīng)驗(yàn),為您提供專業(yè)的成都網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計(jì)開發(fā)服務(wù)!
你可以設(shè)置按鈕背景為透明,設(shè)置邊框?yàn)閚ull
but.setBackground(new Color(255,255,255)); //but是按鈕名稱
but.setBorder(null); //but是按鈕名稱
我剛寫的一個(gè)點(diǎn)擊按鈕交替變換圖標(biāo)的程序,代碼如下:
import java.awt.Color;
import java.awt.Container;
import java.awt.Cursor;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
//變換按鈕圖標(biāo)
public class Button_Icon extends JFrame implements ActionListener{
private Container con;
private JButton but;
private Icon ic;
public Button_Icon() {
this.setTitle("歡迎");
this.setBounds(200, 200, 200, 234); //滑漏洞標(biāo)搜歷題欄高34
con=this.getContentPane();
con.setLayout(null);
Cursor cs=new Cursor(Cursor.HAND_CURSOR);
ic=new ImageIcon("j:\\Screenshot.png");
but=new JButton(ic);
but.setBounds(60, 70, 80, 60);
but.addActionListener(this);
but.setCursor(cs);
but.setBackground(new Color(255,255,255));
but.setBorder(null);
con.add(but);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e) {
Icon ic2=but.getIcon();
if(ic2==null){but.setIcon(ic);}
else {but.setIcon(null);}
}
public static void main(String[] args) {
new Button_Icon();
}
}
你可信枯以看下效果,看是不是你想要的。
你的背景圖片的Java程序,我?guī)湍愀耐炅?你看看吧(只是改了JM();構(gòu)造函數(shù)中的內(nèi)容,去掉了setOpaque函數(shù),其它的地方?jīng)]動(dòng))
import?javax.swing.*;
public?class?JM?extends?JFrame?{
JLabel?yh?=?new?JLabel("用戶名");
JLabel?mm?=?new?JLabel("密碼");
JTextField?yh1?=?new?JTextField(15);
JPasswordField?mm1?=new?JPasswordField(15);
嘩散寬JRadioButton?jmm?=?new?JRadioButton("記住密碼");
JButton?dl?=new?JButton("登陸");
JButton?qx?=?new?JButton("取消");
JButton?zc?=?掘慧new?JButton("注冊");
public?JM?(){
this.setTitle("登陸界面");
this.setSize(300,?270);
JPanel?c?=?(JPanel)this.getContentPane();
c.setLayout(null);
//Container?c?=?this.getContentPane();
yh.setBounds(20,?0,?100,?100);
yh1.setBounds(70,37,?200,?27);
mm.setBounds(20,?30,?100,?100);
mm1.setBounds(70,?67,?200,27);
jmm.setBounds(70,?95,?80,?30);
dl.setBounds(70,?135,?60,?35);
qx.setBounds(135,?135,?60,?35);
zc.setBounds(200,?135,?60,?35);
c.add(yh);
c.add(yh1);
c.add(mm);
c.add(mm1);
亂亮c.add(jmm);
c.add(dl);
c.add(qx);
c.add(zc);
JLabel?bg?=?new?JLabel(new?ImageIcon("006Cx3u5ly1fbz7xwdx1sj30i40dydg4.jpg"));
bg.setBounds(0,?0,?300,?270);
c.add(bg);
c.setOpaque(false);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true);
}
//private?void?setOpaque(boolean?b)?{
//?TODO?Auto-generated?method?stub
//}
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
new?JM();
}
}
運(yùn)行結(jié)果
這是我以前的一個(gè)小代碼你可以看看
public class demo_9 extends JFrame {
JSplitPane jsp = null;
JList jlist;
JLabel jlabel;
public static void main(String[] args) {
demo_9 a = new demo_9();
}
public demo_9(){
String []words ={"boy","girl"};
JList jlist = new JList(words);
jlabel = new JLabel(new ImageIcon("Image//真頌吵三.gif")); //這里就是引入圖片了
//拆分窗格
jsp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,jlist,jlabel);
jsp.setDividerLocation(70);
//設(shè)置可以伸縮
jsp.setOneTouchExpandable(true);
this.add(jsp);
this.setTitle("test");
this.setSize(400,300);
this.setLocation(400,200);
this.setVisible(true);
}
}
步驟:首先先在project里新建個(gè)文件夾(Folder),然謹(jǐn)臘后把你要插入的圖片復(fù)制黏貼到這個(gè)文件祥櫻滑夾里面。
例如我那個(gè)引入的圖片代碼:jlabel = new JLabel(new ImageIcon("Image//真三.gif"));
我new一個(gè)folder叫Image,圖片名稱叫"真三.gif"
一個(gè)圖片時(shí)你知道,現(xiàn)在只是切悔御換的問碧配巖題?
給按鈕添加一個(gè) ActionListener,在它賣攜的 actionPerformed 方法中做你的事情,把 jpanel.setIcon(..) 換張圖片。