[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re: JDK1.2.2でHGridのセルが見えない




えんどう@(ボケ)^3 です。

>>HJTableを使った場合はどうなりますか。
>
>import com.sun.java.swing を import javax.swing に書き換えて
>higa.zip のすべてのソースを再コンパイルしてみました。
>
>実行結果はこうなりました。(テストソースは最後に付けます)

ソース付けるの忘れました。^^; 

※ Swing 初心者なのでひどい間違いを犯しているかもしれません..

      1 // JDBC Component Test Applet
      2 // HJApplet.java (AWT Components)
      3 
      4 import java.applet.*;
      5 import javax.swing.*;
      6 import java.awt.*;
      7 import java.awt.event.*;
      8 import java.sql.*;
      9 import higa.sql.*;
     10 
     11 import higa.sql.dataset.*;
     12 import higa.jhcl.model.*;
     13 import higa.jhcl.control.*;
     14 import higa.jhcl.view.*;
     15 import higa.dbswing.*;
     16 
     17 public class HJApplet extends JApplet {
     18   private static final String ORA_DRIVER = "oracle.jdbc.driver.OracleDriver";
     19   private static final String ORA_URL = "jdbc:oracle:thin:@xxxxxxxxxx:1521:ORA7";
     20   private static final String ORA_USER = "agent007";
     21   private static final String ORA_PASSWORD = "goldfinger";
     22   
     23   HDatabase database_ = new HDatabase(); // 
     24   HDataSet dataset_   = new HDataSet();  // 
     25   
     26   HJNavigator navigator_ = new HJNavigator();
     27   HJTable grid_          = new HJTable();
     28   JLabel slabel_         = new JLabel();
     29   
     30   public HJApplet() {
     31   }
     32   
     33   public void jbInit() {
     34     // GUI の構築
     35     JPanel rootpanel = new JPanel();
     36     this.getContentPane().add(rootpanel, BorderLayout.CENTER);
     37     
     38     JPanel uppanel = new JPanel();
     39     rootpanel.add(uppanel, BorderLayout.NORTH);
     40     
     41     navigator_.setDataSet(dataset_);
     42     uppanel.add(navigator_);
     43     
     44     grid_.setDataSet(dataset_);
     45     rootpanel.add(grid_, BorderLayout.CENTER);
     46     
     47     JPanel spanel = new JPanel();
     48     rootpanel.add(spanel, BorderLayout.SOUTH);
     49     
     50     spanel.add(slabel_);
     51   }
     52   
     53   public void init() {
     54     // Oracleとの接続
     55     database_.setDriver(ORA_DRIVER);
     56     database_.setConnectionURL(ORA_URL);
     57     database_.setUserName(ORA_USER);
     58     database_.setPassword(ORA_PASSWORD);
     59     try {
     60       database_.setAutoCommit(false);
     61       database_.open();
     62       DatabaseMetaData meta = database_.getMetaData();
     63       System.out.println("driver=" + meta.getDriverName());
     64       System.out.println("product=" + meta.getDatabaseProductName());
     65       System.out.println("version=" + meta.getDatabaseProductVersion());
     66 
     67       // HDataSet 構築
     68       String query = "SELECT * FROM GOLF_SCORE";
     69       dataset_.setDatabase(database_);
     70       dataset_.setQuery(query);
     71       dataset_.open();
     72     } catch (SQLException ex) {
     73       int errcode = ex.getErrorCode();
     74       String message = ex.getMessage();
     75       String state = ex.getSQLState();
     76       System.out.println("SQL ERROR:");
     77       System.out.println("errcode=" + errcode + ", message=" + message + ", state=" + state);
     78     } catch (Exception ex) {
     79       // open() のエラー
     80       String message = ex.getMessage();
     81       System.out.println("ERROR:");
     82       System.out.println("message=" + message);
     83     }
     84     
     85     // GUIの構築
     86     jbInit();
     87   }
     88   
     89   public void destroy() {
     90     // Oracleからの切断
     91     // HDataSet のクローズ
     92     if (dataset_ != null) {
     93       if ( dataset_.isOpen() ) {
     94         try {
     95           dataset_.close();
     96         } catch (SQLException ex) {
     97           // 
     98           int errcode = ex.getErrorCode();
     99           String message = ex.getMessage();
    100           String state = ex.getSQLState();
    101           System.out.println("DATASET CLOSE ERROR:");
    102           System.out.println("errcode=" + errcode + ", message=" + message + ", state=" + state);
    103         }
    104       }
    105     }
    106     
    107     // HDatabase のクローズ
    108     if (database_ != null) {
    109       if ( database_.isOpen() ) {
    110         try {
    111           database_.close();
    112         } catch (SQLException ex) {
    113           // 
    114           int errcode = ex.getErrorCode();
    115           String message = ex.getMessage();
    116           String state = ex.getSQLState();
    117           System.out.println("DATABASE CLOSE ERROR:");
    118           System.out.println("errcode=" + errcode + ", message=" + message + ", state=" + state);
    119         }
    120       }
    121     }
    122   }
    123   
    124   public static void main(String[] args) {
    125     Frame f = new Frame();
    126     final HJApplet applet = new HJApplet();
    127     f.add(applet);
    128     applet.init();
    129     applet.start();
    130     f.addWindowListener( new WindowListener() {
    131       public void windowOpened( WindowEvent e ){}
    132       public void windowClosed( WindowEvent e ){}
    133       public void windowClosing( WindowEvent e ){
    134         applet.destroy();
    135         System.exit(0);
    136       }
    137       public void windowIconified( WindowEvent e ){}
    138       public void windowDeiconified( WindowEvent e ){}
    139       public void windowActivated( WindowEvent e ){}
    140       public void windowDeactivated( WindowEvent e ){}
    141     });
    142     f.pack();
    143     f.setSize(400, 320);
    144     f.show();
    145   }
    146 }

-- 
ENDO Yasuyuki <yasuyuki@xxxxxxxxxx>
http://www.javaopen.org/jfriends/ (Japanese Only)