想用swing做一个这样的java的swing界面设计,但是不知道代码该怎么写,求指教!

问题:我在用swing做一个QQ登录界面,基本已实现,但那个密码输入JPasswordField,把提示内容显示成了,如何解决
描述:swing我在用swing做一个QQ登录界面,基本已实现,但那个密码输入JPasswordField,把提示内容显示成*了,如何解决解决方案1:
还用swing===
你可以用javaFX解决方案2:
setEchoChar(char&c)&&&传入&'*'
以上介绍了“我在用swing做一个QQ登录界面,基本已实现,但那个密码输入JPasswordField,把提示内容显示成了,如何解决”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:/itwd/1017383.html
上一篇: 下一篇:5952人阅读
Java(12)
Source(源码)(7)
Author:Pirate Leo
前段时间我负责在系统中添加了HBase用于管理海量数据,功能实现后自然到了性能测试阶段,性能、可靠性、稳定性,性性都不能少。
因此就有了个内部的小需求:“给测试部提供一个工具,可以向HBase写入数据,以达到测试所需的数据量”。
由于我们的系统是由Java编写,Client的代码也用的Hadoop的Java API,因此小工具的界面编写理所应当的选择了Java Swing。
之前没有用过Swing,本次完全是在网上一边翻博一边编码。
转载请注明出处,谢谢。
首先是成品图:
OK,我知道很丑,咱不就图个实用么……
这里可以输入Hadoop集群的IP,可以选择需要操作的表,可以清空表中的记录,还有写入耗时统计。
下面是代码,代码分为两个文件,一个是MainView负责界面展示;另一个是Worker线程,负责干活和刷新进度条与显示数据。
MainView代码:
package com.codeevoship.
import java.awt.C
import java.awt.F
import java.awt.GridBagC
import java.awt.GridBagL
import java.awt.I
import java.awt.event.ActionE
import java.awt.event.ActionL
import javax.swing.JB
import javax.swing.JF
import javax.swing.JL
import javax.swing.JOptionP
import javax.swing.JProgressB
import javax.swing.JRadioB
import javax.swing.JTextF
@SuppressWarnings(&serial&)
public class MainWindow extends JFrame {
private JLabel welcomeL
private JLabel ipL
private JTextField ipT
private JLabel numL
private JTextField numT
private JProgressB
private JTextField txtResultS
private JRadioButton archiveS
private JRadioButton contentS
private JRadioButton systemLogS
private JRadioButton clearDataS
private JButton startB
private JButton exitB
private Thread thdW
public MainWindow() {
// 获取本JFrame的ContentPane
Container contentPane = getContentPane();
GridBagLayout gridbag = new GridBagLayout();
contentPane.setLayout(gridbag);
GridBagConstraints c = new GridBagConstraints();
welcomeLbl = new JLabel(&CodeEvoShip HBase 数据填充工具&);
welcomeLbl.setFont(new Font(&Serif&,Font.BOLD,20));
c = getGridBagConstraints(0, 0, 0, 1, 0, 0,
GridBagConstraints.CENTER, GridBagConstraints.NONE,
new Insets(10, 0, 0, 0), 10, 0);
gridbag.setConstraints(welcomeLbl, c);
contentPane.add(welcomeLbl);
ipLbl = new JLabel(&Cluster IP:&);
c = getGridBagConstraints(0, 1, 1, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(10, 0, 10, 0), 10, 0);
gridbag.setConstraints(ipLbl, c);
contentPane.add(ipLbl);
ipTxt = new JTextField(&127.0.0.1;127.0.0.2;127.0.0.3&);
c = getGridBagConstraints(1, 1, 0, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(10, 0, 10, 0), 85, 0);
gridbag.setConstraints(ipTxt, c);
contentPane.add(ipTxt);
// 数量填写
numLbl = new JLabel(&Write Number:&);
c = getGridBagConstraints(0, 2, 1, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(10, 0, 10, 0), 10, 0);
gridbag.setConstraints(numLbl, c);
contentPane.add(numLbl);
numTxt = new JTextField(&10000&);
c = getGridBagConstraints(1, 2, 0, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(10, 0, 10, 0), 230, 0);
gridbag.setConstraints(numTxt, c);
contentPane.add(numTxt);
archiveSel = new JRadioButton(&Archive Table&);
c = getGridBagConstraints(0, 3, 1, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 0, 0, 0), 0, 0);
gridbag.setConstraints(archiveSel, c);
contentPane.add(archiveSel);
contentSel = new JRadioButton(&Content Table&);
c = getGridBagConstraints(1, 3, 1, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 0, 0, 0), 0, 0);
gridbag.setConstraints(contentSel, c);
contentPane.add(contentSel);
systemLogSel = new JRadioButton(&SystemLog Table&);
c = getGridBagConstraints(2, 3, 1, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 0, 5, 0), 0, 0);
gridbag.setConstraints(systemLogSel, c);
contentPane.add(systemLogSel);
clearDataSel = new JRadioButton(&Clear old data of selected Tables!!&);
c = getGridBagConstraints(0, 4, 0, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 0, 15, 0), 0, 0);
gridbag.setConstraints(clearDataSel, c);
contentPane.add(clearDataSel);
probar = new JProgressBar(0, 100);
probar.setStringPainted(true);
c = getGridBagConstraints(0, 6, 0, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(5, 5, 5, 5), 250, 0);
gridbag.setConstraints(probar, c);
contentPane.add(probar);
txtResultShow = new JTextField(&Not Begin&);
txtResultShow.setEditable(false);
txtResultShow.setHorizontalAlignment(JTextField.CENTER);
c = getGridBagConstraints(0, 7, 0, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 0, 5, 0), 325, 0);
gridbag.setConstraints(txtResultShow, c);
contentPane.add(txtResultShow);
//执行与退出
startBtn = new JButton(&Start&);
c = getGridBagConstraints(0, 5, 0, 1, 0, 0,
GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 0, 5, 0), 50, 0);
gridbag.setConstraints(startBtn, c);
startBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
if (!paraPassCheck()) {
if (null != thdWorker && thdWorker.isAlive()) {
JOptionPane.showMessageDialog(null,&There already is a task running now, please wait&);
DoWork doWork = new DoWork(ipTxt.getText(),Long.parseLong(numTxt.getText()),
contentSel.isSelected(),archiveSel.isSelected(),
systemLogSel.isSelected(),clearDataSel.isSelected(),
probar, txtResultShow);
thdWorker = new Thread(doWork);
thdWorker.start();
contentPane.add(startBtn);
exitBtn = new JButton(&Exit&);
c = getGridBagConstraints(1, 5, 0, 1, 0, 0,
GridBagConstraints.EAST, GridBagConstraints.NONE,
new Insets(0, 0, 5, 0), 50, 0);
gridbag.setConstraints(exitBtn, c);
exitBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
System.exit(0);
contentPane.add(exitBtn);
private boolean paraPassCheck() {
Long.parseLong(numTxt.getText());
} catch (Exception e) {
JOptionPane.showMessageDialog(null,&Invalid number &);
private static GridBagConstraints getGridBagConstraints(int gridx,
int gridy, int gridwidth, int gridheight, double weightx,
double weighty, int anchor, int fill, Insets insets, int ipadx,
int ipady) {
return new GridBagConstraints(gridx, gridy, gridwidth, gridheight,
weightx, weighty, anchor, fill, insets, ipadx, ipady);
public static void main(String args[]) {
MainWindow mainWindow = new MainWindow();
mainWindow.setTitle(&CodeEvoShip&);
mainWindow.pack();
mainWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainWindow.setVisible(true);
Worker代码:
package com.codeevoship.
import javax.swing.JProgressB
import javax.swing.JTextF
public class DoWork implements Runnable {
JProgressB
JTextField curTxtS
long totalNum = 0;
long curNum = 0;
long startTime = 0;
long curTime = 0;
public DoWork(String ip, long num, boolean isWriteCon, boolean isWriteArc, boolean isWriteSys, boolean isClearData, JProgressBar probar, JTextField curTxtShow) {
System.out.println(&IP:& + ip + &, Num:& + num);
System.out.println(&Write Content[& + isWriteCon + &], Write Archive[& + isWriteArc + &], Write SystemLog[& + isWriteSys + &].&);
startTime = 0;
curNum = 0;
totalNum =
this.probar =
this.curTxtShow = curTxtS
public void run() {
startTime = System.currentTimeMillis();
// 开始工作
System.out.println(&Do Work Start!&);
StringBuilder sb = new StringBuilder();
while (true) {
if (curNum &= totalNum) {
// TODO: Real work here
Thread.sleep(10);
// 更新界面显示
curNum += 1;
probar.setValue((int) (curNum*100/totalNum));
curTime = System.currentTimeMillis();
sb.setLength(0);
sb.append(curNum);
sb.append('/');
sb.append(totalNum);
sb.append(& cost time: &);
sb.append((curTime - startTime)/1000);
sb.append('s');
curTxtShow.setText(sb.toString());
} catch (Exception e) {
e.printStackTrace();
System.out.println(&Do Work End!&);
大家如需要可随意使用,改成自己的小工具,只要把Worker中的// TODO: 改为实际运行的程序即可。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:486974次
积分:4225
积分:4225
排名:第7205名
原创:48篇
评论:87条
阅读:129186
(3)(5)(3)(2)(9)(1)(5)(2)(1)(5)(12)(2)(3)【求助啊!】大家帮我看看这个swing界面的代码该怎么写,做一天【java吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:636,036贴子:
【求助啊!】大家帮我看看这个swing界面的代码该怎么写,做一天收藏
用swing组件做的界面,做一个图形显示,我昨天才刚学了一天JAVA的swing,然后老师出了一个题目。把我难到了,到现在都做了一天都没有做出来!!实在不行了,请大家帮我看看这个swing界面该怎么写,谢谢了。图形如下:
java,亚马逊网上书城,满59元免运费,好书不间断!700多万种中外正版精品图书一网打尽!买java,就上Z.CN!正版图书,天天低价特惠,让您挚爱阅读!
登录百度帐号推荐应用

我要回帖

更多关于 java的swing界面设计 的文章

 

随机推荐