/*///////////////////////////////////////////////////////////////////////// * * This is a basic java datawindow example. * I want explaine you how to use a datawindow control for java development. * (its so basic...) * * Autor: * David Arcia 09-09-2002 ([email protected]) * //////////////////////////////////////////////////////////////////////////*/ import javax.swing.JOptionPane; import javax.swing.JFrame; import powersoft.datawindow.JDataWindowControl; import powersoft.datawindow.Blob; import powersoft.powerj.db.java_sql.Transaction; public class JDataWindow extends JFrame{ //The datawindow private JDataWindowControl dwcActual; //The powerbuilder library path (where dataobjects are stored) private final String LIBRERIA = new String("C:\PB7\java.pbl"); //Transaction objetc for database connection private Transaction trans; //Contructor public JDataWindow() { //New datawindow control dwcActual = getDataWindow("dw_products",true,true,true); //Not null ? if(dwcActual == null) return; }//ends method /******************************************************************************** * CONNECTION USING POWERSOFT TRANSACTION OBJECT (as SQLCA in PowerBuilder) ********************************************************************************/ //This method connect with database (by example, a oracle database) public boolean setConnect(){ trans = new Transaction(); trans.registerDriver( "oracle.jdbc.driver.OracleDriver" ); trans.setDataSource("jdbc:oracle:thin:@192.168.22.10:1521:FALCON"); trans.setUserID( "rjimenez" ); trans.setPassword( "defalcon" ); //Error ? if(!trans.connect()){ System.err.println("Connection failed."); return false; } return true; }//ends method /******************************************************************************** * JAVA DATAWINDOW'S CREATION ********************************************************************************/ //Create a datawindow public JDataWindowControl getDataWindow(String dataobject){ JDataWindowControl dwc = new JDataWindowControl(); //Assign a datawindow library dwc.setSourceFileName(LIBRERIA); //Assign a datawindow object to the dw control dwc.setDataWindowObjectName(dataobject); //Some properties... dwc.setVScroll( true ); dwc.insertRow(0); //Assign the transaction object to dw dwc.setTransaction(trans); //return object created return dwc; }//ends method //Optional...Method for row selection public void selectRow(int row){ if(row > 0){ dwcActual.selectRow(0,false); dwcActual.selectRow(row,true); dwcActual.scrollToRow(row); dwcActual.setRow(row); } }//ends method //Optional... for to make a datawindow editable or not public void setEditable(JDataWindowControl dwc, boolean editar){ //Accept text dwcActual.acceptText(); //get column number int cols = Integer.parseInt(dwc.describe("Datawindow.column.count")); ////////////////////////////////////////////////////////////////////////// String indicador = (editar) ? "1" : "0"; ////////////////////////////////////////////////////////////////////////// editable = indicador == "1"; //Change the editable porperty for(int cont=1; cont <= cols; cont++){ dwc.modify("#" + cont + ".TabSequence = " + indicador) ; } }//ends method //Optional... Insert new row to datawindows end. public void getNewRow(){ int row=dwcActual.insertRow(0); selectRow(row); }//final de metodo //Optional... Delete a datawindow row public void deleteRow(){ int boton=JOptionPane.showConfirmDialog(null,"Delete actual row ?", "Deleting", JOptionPane.YES_NO_OPTION); if(boton == 0) dwcActual.deleteRow(dwcActual.getRow()); }//Fin de metodo /******************************************************************************** * THIS ARE THE DATAWINDOW'S EVENT MANAGERS * * The events that support datawindow are clasificated in differents interfaces * according it function. * ******************************************************************************** Interfaces: MouseListener,FocusListener,DatabaseListener,EditChangedListener, ItemListener,PrintListener,RowChangeListener, etc... Datawindow events: public void leftButtonDoubleClick (MouseEvent event){} public void leftButtonClick (MouseEvent event){} public void leftButtonDown ( MouseEvent event){} public void leftButtonUp ( MouseEvent event){} public void middleButtonClick ( MouseEvent event){} public void middleButtonDoubleClick ( MouseEvent event){} public void mouseMove ( MouseEvent event){} public void rightButtonClick ( MouseEvent event){} public void rightButtonDoubleClick ( MouseEvent event){} public void rightButtonDown ( MouseEvent event){} public void rightButtonUp ( MouseEvent event){} public void getFocus ( FocusEvent event){} public void loseFocus ( FocusEvent event){} public void DBError ( DatabaseEvent event){} public void SQLPreview ( DatabaseEvent event){} public void editChanged ( EditChangedEvent event){} public void itemChanged ( ItemEvent event){} public void itemChangeAccepted ( ItemEvent event){} public void itemError ( ItemEvent event){} public void itemFocusChanged ( ItemEvent event){} public void printEnding ( PrintEvent event){} public void printMarginChanging ( PrintEvent event){} public void printPageStarting ( PrintEvent event){} public void printStarting ( PrintEvent event){} public void retrieveEnd ( RetrieveEvent event){} public void retrieveRow ( RetrieveEvent event){} public void retrieveStart ( RetrieveEvent event){} public void rowChanged ( RowChangeEvent event){} public void rowChanging ( RowChangeEvent event){} etc... ********************************************************************************/ }//ends classe
本文地址:http://com.8s8s.com/it/it19524.htm