当前位置: 技术问答>java相关
非常头痛的问题:编译java程序时的错误,一个是监听器、一个在调用方法时
来源: 互联网 发布时间:2015-02-16
本文导语: 下面是一段源程序,要实现通过按DigData按钮从sqlserver数据库里提取数据,打在屏幕上,编译的时候出现2个错误(已经标在源程序旁边)一个是使用监听器、一个是调用方法时,无法解决,还请高手指教: import java.a...
下面是一段源程序,要实现通过按DigData按钮从sqlserver数据库里提取数据,打在屏幕上,编译的时候出现2个错误(已经标在源程序旁边)一个是使用监听器、一个是调用方法时,无法解决,还请高手指教:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Prc_c_m extends JFrame {
JButton buttonDigdata=new JButton("Dig Data");
JButton buttonUpload=new JButton("UpLoad File");
public Prc_c_m() {
super("Prc_c");
setSize(360,360);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel pane = new JPanel();
pane.setLayout(new GridLayout(1, 2, 5, 15));
buttonDigdata.addActionListener(this);
//在javax.swing.Abstractbutton 中的addActionListener(java.awt.event.ActionListener)不能被应用到(Prc_c_m)
pane.add(buttonDigdata);
pane.add(buttonUpload);
setContentPane(pane);
}
void digData() {
String data = "jdbc:odbc:prc_c";
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(
data, "sa", "");
Statement st = conn.createStatement();
ResultSet rec = st.executeQuery(
"SELECT * " +
"FROM TablePl " +
"ORDER BY Id");
System.out.println("IdtNamet");
while(rec.next()) {
System.out.println(rec.getString(1) + "t"
+ rec.getString(2) + "t");
}
st.close();
} catch (SQLException s) {
System.out.println("SQL Error: " + s.toString() + " "
+ s.getErrorCode() + " " + s.getSQLState());
} catch (Exception e) {
System.out.println("Error: " + e.toString()
+ e.getMessage());
}
public void actionPerformed(ActionEvent evt) {
if (evt.getSource() ==buttonDigdata)
frame.digData(); //出现错误:不能解析frame
}
public static void main(String[] arguments) {
Prc_c_m frame = new Prc_c_m();
frame.pack();
frame.setVisible(true);
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Prc_c_m extends JFrame {
JButton buttonDigdata=new JButton("Dig Data");
JButton buttonUpload=new JButton("UpLoad File");
public Prc_c_m() {
super("Prc_c");
setSize(360,360);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel pane = new JPanel();
pane.setLayout(new GridLayout(1, 2, 5, 15));
buttonDigdata.addActionListener(this);
//在javax.swing.Abstractbutton 中的addActionListener(java.awt.event.ActionListener)不能被应用到(Prc_c_m)
pane.add(buttonDigdata);
pane.add(buttonUpload);
setContentPane(pane);
}
void digData() {
String data = "jdbc:odbc:prc_c";
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(
data, "sa", "");
Statement st = conn.createStatement();
ResultSet rec = st.executeQuery(
"SELECT * " +
"FROM TablePl " +
"ORDER BY Id");
System.out.println("IdtNamet");
while(rec.next()) {
System.out.println(rec.getString(1) + "t"
+ rec.getString(2) + "t");
}
st.close();
} catch (SQLException s) {
System.out.println("SQL Error: " + s.toString() + " "
+ s.getErrorCode() + " " + s.getSQLState());
} catch (Exception e) {
System.out.println("Error: " + e.toString()
+ e.getMessage());
}
public void actionPerformed(ActionEvent evt) {
if (evt.getSource() ==buttonDigdata)
frame.digData(); //出现错误:不能解析frame
}
public static void main(String[] arguments) {
Prc_c_m frame = new Prc_c_m();
frame.pack();
frame.setVisible(true);
}
}
|
1 类Prc_c_m 没有实现ActionListener接口所以不能作为addActionListener的参数。
可以这样定义Prc_c_m :
public class Prc_c_m extends JFrame implements ActionListener{
可以这样定义Prc_c_m :
public class Prc_c_m extends JFrame implements ActionListener{
|
2去掉frame. 改为
digData(); //出现错误:不能解析frame
digData(); //出现错误:不能解析frame