| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5826 人关注过本帖
标题:JOptionPane.showMessageDialog的问题
取消只看楼主 加入收藏
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
 问题点数:0 回复次数:10 
JOptionPane.showMessageDialog的问题

package 学生管理系统;

import java.awt.*;
import java.awt.event.*;

import javax.swing.*;

public class MainClass extends JFrame {

public MainClass() {
super("学生管理系统---管理员登陆");
this.init();
}

public void init() {
Container cp = this.getContentPane();
cp.setLayout(null);


JLabel jlabel1 = new JLabel("管理员帐号:");
JLabel jlabel2 = new JLabel("管理员密码:");
JButton jbutton = new JButton("登陆");
final JTextField text = new JTextField(10);
final JPasswordField password = new JPasswordField();
jbutton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String[] str =
new DatabaseUtilities().getDataTypes("Admin_info");
if(str[0].equals(text.getText()))
if(str[1].equals(password.getText()))
JOptionPane.showMessageDialog(f,"你以管理员"
+str[0]+"的身份登陆");  //这里有错误,该怎么办。。。意思是不认识F
else
JOptionPane.showMessageDialog(f,"你输入的密码有误");
else
JOptionPane.showMessageDialog(f,"你输入的用户名不存在");
}
});

cp.add(jlabel1);
cp.add(jlabel2);
cp.add(text);
cp.add(password);
cp.add(jbutton);

jlabel1.setBounds(150, 150, 100, 20);
jlabel2.setBounds(150, 200, 100, 20);
text.setBounds(260, 150, 150, 20);
password.setBounds(260, 200, 150, 20);
jbutton.setBounds(220, 270, 90, 40);

this.setSize(new Dimension(600, 400));
this.setLocation(200, 200);
this.show();

this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}

/*class ButtonListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
String SQLCommand = "SELECT * FROM Admin_info";
execute(SQLCommand);
}
}*/

public static void main(String[] args) {
final MainClass f = new MainClass();
}

}

搜索更多相关主题的帖子: JOptionPane quot import JLabel awt 
2007-01-12 17:04
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 

如果我想让他访问外面的那个在MAIN中声明的F 该怎么办?
把F声明为FINAL?好像不管用。。。


开开心心的过&玩每一天!!!!
2007-01-12 20:40
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 
晕。。。楼上的  我E文不好。。。
建的包太多了。。。这样中文名我自已好认识。。。。
自已做练习的东西。。。。。

开开心心的过&玩每一天!!!!
2007-01-12 21:22
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 
以下是引用千里冰封在2007-1-12 20:51:17的发言:
传入this就可以了

this不可以啊,因为我是在BUTTON这个ACTION方法中声明写的这段代码。。
THIS不是对当初引用对像的引用么。。。那如果我用 THIS的话就得到BUTTON这个对像啦。。。。


开开心心的过&玩每一天!!!!
2007-01-12 21:24
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 
这个我知道啊  呵呵   还是谢谢楼上的好心提醒。。
至于你那个问题。。。因为用的那个类是我自已建的啊
下面那个SHOWMESSAGE的错误 是因为你的参数不对。。。我上面已经说过了  THIS表示对当前引用此方法的对像的引用  所以是一个BUTTON而不是一个容器。。。

开开心心的过&玩每一天!!!!
2007-01-12 21:34
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 
呵呵  传入NULL也可以啦   我只想忽然想到这个问题  所以就问下了   多了解点东西不是坏事嘛

开开心心的过&玩每一天!!!!
2007-01-12 22:18
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 
不能明白版主的意思  如果版主有空就烦请写个eg  没空就算了  也许以后我再遇到的时候领悟到了

开开心心的过&玩每一天!!!!
2007-01-12 22:42
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 
版主费心了  

开开心心的过&玩每一天!!!!
2007-01-12 23:13
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 
以下是引用wuzhong在2007-1-13 22:04:49的发言:
不知道楼主可不可以把DatabadeUitilites类的代码,拷贝上来,学习,呵呵!谢谢.

那个是我自已写的类,专门用来处理数据库操作的。。。。
呵呵!!!不是系统JDK里的。。。。


开开心心的过&玩每一天!!!!
2007-01-13 23:49
しΟν∈→鱈
Rank: 1
等 级:新手上路
威 望:2
帖 子:369
专家分:0
注 册:2006-10-25
收藏
得分:0 
我也是跟着书上来写的,呵呵!!!
[CODE]

import java.awt.event.*;
import java.sql.*;
import java.util.Vector;
import sun.jdbc.odbc.JdbcOdbcDriver;

public class DatabaseUtilities {

static String jdbcDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
static String dbName = "JDBC";
static String urlRoot = "jdbc:odbc:";
private ActionListener exceptionListener = null;

public DatabaseUtilities() {
registerDriver();
}

public void setDatabaseName(String dbName) {
this.dbName = dbName;
}

public void registerDriver() {
try {
Class.forName(jdbcDriver);
DriverManager.registerDriver(new JdbcOdbcDriver());

} catch(ClassNotFoundException e) {
reportException(e.getMessage());

} catch(SQLException e) {
reportException(e.getMessage());
}
}

public String login(String tableName, String dbuser, String dbpassword)
{
String message = null;
Vector user = new Vector();
Vector password = new Vector();
String url = urlRoot + dbName;
String SQLCommand = "SELECT * FROM " + tableName + ";";

try {
Connection con = DriverManager.getConnection(url);
Statement stms = con.createStatement();
ResultSet rs = stms.executeQuery(SQLCommand);
while(rs.next()) {
user.add(rs.getString("name").trim());
password.add(rs.getString("password").trim());
}
} catch(SQLException sqlExc) {
reportException(sqlExc.getMessage());
}

if (!user.contains(dbuser) && !password.contains(dbpassword))
{
message = "你输入的用户名不存在";
}
else
{
if (!password.contains(dbpassword))
{
message = "你输入的密码有误";
}else
{
message = "你以管理员"+dbuser+"的身份登陆";
}
}
return message;
}

public void execute(String SQLCommand) {
String url = urlRoot + dbName;
try {
Connection con = DriverManager.getConnection(url);
Statement stmt = con.createStatement();
stmt.execute(SQLCommand);
con.close();

} catch(SQLException e) {
reportException(e.getMessage());
}
}

public void excute(String[] SQLCommand) {
String url = urlRoot + dbName;
try {
Connection con = DriverManager.getConnection(url);
Statement stmt = con.createStatement();
for(int i = 0; i < SQLCommand.length; i++) {
stmt.execute(SQLCommand[i]);
}
con.close();

} catch(SQLException e) {
reportException(e.getMessage());
}
}

public String[] getColumnNames(String tableName) {
Vector dataSet = new Vector();
String[] columnNames = null;
String url = urlRoot + dbName;
String SQLCommand = "SELECT * FROM " + tableName + ";";

try {
Connection con = DriverManager.getConnection(url);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(SQLCommand);
ResultSetMetaData md = rs.getMetaData();

columnNames = new String[md.getColumnCount()];
for(int i = 0; i < columnNames.length; i++) {
columnNames[i] = md.getColumnLabel(i+1);
}
con.close();

} catch(SQLException e) {
reportException(e.getMessage());
}
return columnNames;
}

public String[] getColumnNamesUsingQuery(String SQLCommand) {

Vector dataSet = new Vector();
String[] columnNames = null;
String url = urlRoot + dbName;

try {
Connection con = DriverManager.getConnection(url);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(SQLCommand);
ResultSetMetaData md = rs.getMetaData();

columnNames = new String[md.getColumnCount()];
for(int i = 0; i < columnNames.length; i++) {
columnNames[i] = md.getColumnLabel(i+1);
}
con.close();

} catch(SQLException e) {
reportException(e.getMessage());
}
return columnNames;
}

public String[] getDataTypes(String tableName) {
Vector dataSet = new Vector();
String[] dataTypes = null;
String url = urlRoot + dbName;
String SQLCommand = "SELECT * FROM " + tableName + ";";

try {
Connection con = DriverManager.getConnection(url);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(SQLCommand);
ResultSetMetaData md = rs.getMetaData();

dataTypes = new String[md.getColumnCount()];
for(int i = 0; i < dataTypes.length; i++) {
dataTypes[i] = md.getColumnTypeName(i+1);
}
con.close();

} catch(SQLException e) {
reportException(e.getMessage());
}
return dataTypes;
}

public Vector executeQuery(String SQLQuery) {

Vector dataSet = new Vector();
String url = urlRoot + dbName;

try {
Connection con = DriverManager.getConnection(url);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(SQLQuery);
ResultSetMetaData md = rs.getMetaData();

int nColumns = md.getColumnCount();
while(rs.next()) {
Vector rowData = new Vector();
for(int i = 1; i <= nColumns; i++) {
rowData.addElement(rs.getObject(i));
}
dataSet.addElement(rowData);
}
con.close();

} catch(SQLException e) {
reportException(e.getMessage());
}
return dataSet;
}
public void setExceptionListener(ActionListener exceptionListener) {
this.exceptionListener = exceptionListener;
}

private void reportException(String exception) {
if(exceptionListener != null) {
ActionEvent evt = new ActionEvent(this, 0, exception);
exceptionListener.actionPerformed(evt);
}
else {
System.err.println(exception);
}
}
}
[/CODE]

其它的一些方法,我写的程序用没用到。。。我只是把我的代码,插入到原来书上例题中去了。。。
个人认为这些方法应该可以包括操作数据库所有的操作了 

[此贴子已经被作者于2007-1-14 13:01:48编辑过]


开开心心的过&玩每一天!!!!
2007-01-14 12:58
快速回复:JOptionPane.showMessageDialog的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013711 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved