home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1998 July & August / Pcwk78a98.iso / Micrsoft / SAMPLES / VJ6SAMPL.EXE / XlCellEdit / XlCellEdit.java < prev    next >
Text File  |  1998-02-24  |  6KB  |  179 lines

  1.  
  2. /*  Copyright (C) Microsoft Corporation, 1996-1998.  All rights reserved.
  3.  
  4.   This source code is intended only as a supplement to Microsoft
  5.   Visual J++ 6.0.  See this product's on-line documentation for detailed   
  6.   information regarding Microsoft code samples.
  7.  
  8. */
  9.  
  10. import wfc.app.*;
  11. import wfc.core.*;
  12. import wfc.ui.*;
  13. import com.ms.com.Variant;
  14. import excel8.Sheets;
  15. import excel8._Worksheet;
  16. import excel8.Workbooks;
  17. import excel8._Workbook;
  18. import excel8.Range;
  19. import excel8._Application;              
  20. /**
  21.  * Before building and running this project, you must create
  22.  * wrappers for the Microsoft Excel 8.0 Object Library.
  23.  * To create the wrappers, select the 'Project' menu and
  24.  * choose the 'Add COM Wrapper...' item. When the COM Wrapper
  25.  * dialog appears, check the box for 'Microsoft Excel 8.0
  26.  * Object Library'. This item will only appear if Excel 8.0
  27.  * has already been installed on the system. Click 'OK' to
  28.  * close the dialog and create the wrappers.
  29.  * 
  30.  * Three packages will be added to your project:
  31.  *    _excel8........    Excel wrappers
  32.  *    _mso97.........    Office wrappers
  33.  *    _vbeext1.......    VBE wrappers
  34.  * 
  35.  * Once the wrapper packages have been created, build and
  36.  * run the sample.                                        
  37.  */                 
  38.  
  39. public class XlCellEdit extends Form {
  40.  
  41.      Range range;
  42.     _Application excel;
  43.     private void Form_Closed(Object sender, Event e) {
  44.         if (excel != null) {
  45.             excel.Quit();
  46.         }
  47.      }
  48.     
  49.     private void setButton_Click(Object sender, Event e) {
  50.         Variant newString = new Variant();
  51.         newString.putString(edit.getText());
  52.         range.setValue(newString);
  53.     }
  54.  
  55.     private void getButton_Click(Object sender, Event e){
  56.         Variant oldString = new Variant();
  57.         oldString = range.getValue();
  58.         edit.setText(oldString.toString());
  59.     }
  60.  
  61.     private void xlButton_Click(Object sender, Event e) {
  62.         //----------------------------------
  63.         // Fire up Excel and make it visible
  64.         //----------------------------------
  65.         excel = (_Application) new excel8.Application();
  66.         excel.setVisible(0,true);
  67.     
  68.         //-----------------------------
  69.         // Add a workbook and worksheet
  70.         //-----------------------------
  71.         Workbooks books = excel.getWorkbooks();
  72.         Variant one = new Variant();
  73.         one.putInt(1);
  74.         books.Add(one,0);
  75.  
  76.         //---------------------------------------------------
  77.         // Select the first workbook (the one we just added)
  78.         //---------------------------------------------------
  79.         _Workbook book = (_Workbook) books.getItem(one);
  80.  
  81.         //----------------------------------------------
  82.         // Select the first worksheet (the one we added)
  83.         //----------------------------------------------
  84.         Sheets sheets = book.getWorksheets();
  85.         _Worksheet sheet = (_Worksheet) sheets.getItem(one);
  86.  
  87.         //-----------------------------------------------------
  88.         // Select a range of cells (A1,A1) and get their value
  89.         //-----------------------------------------------------
  90.         Variant rangeStart = new Variant();
  91.         Variant rangeEnd = new Variant();
  92.         Variant newString = new Variant();
  93.         Variant oldString = new Variant();
  94.         rangeStart.putString("A1");
  95.         rangeEnd.putString("A1");
  96.         newString.putString("Hello Office!");
  97.         range = sheet.getRange(rangeStart,rangeEnd);
  98.         range.setValue(newString);
  99.         oldString = range.getValue();
  100.         edit.setText(oldString.getString());
  101.     }
  102.  
  103.     public XlCellEdit(){
  104.         //Required for Visual J++ Form Designer support
  105.         initForm();        
  106.     }
  107.  
  108.     /**
  109.      * The main entry point for the application. 
  110.      *
  111.      * @param <args> Array of parameters passed to the application
  112.      * via the command line.
  113.      */
  114.     public static void main(String args[]){
  115.                 wfc.app.Application.run(new XlCellEdit());
  116.     }
  117.  
  118.  
  119.     /**
  120.     * NOTE: The following code is required by the Visual J++ form
  121.     * designer.  It can be modified using the form editor.  Do not
  122.     * modify it using the code editor.
  123.     */
  124.  
  125.     Container components = new Container();
  126.     Button xlButton = new Button();
  127.     Button getButton = new Button();
  128.     Button setButton = new Button();
  129.     Edit edit = new Edit();
  130.     Label label = new Label();
  131.  
  132.     private void initForm()
  133.     {
  134.  
  135.         this.setBackColor(Color.CONTROL);
  136.         this.setSize(new Point(297, 179));
  137.         this.setText("Excel 8.0 Sample");
  138.         this.setAutoScaleBaseSize(16);
  139.         this.setClientSize(new Point(289, 152));
  140.         this.addOnClosed(new EventHandler(this.Form_Closed));
  141.         xlButton.setLocation(new Point(30, 20));
  142.         xlButton.setSize(new Point(90, 20));
  143.         xlButton.setTabIndex(0);
  144.         xlButton.setTabStop(true);
  145.         xlButton.setText("&Launch Excel...");
  146.         xlButton.addOnClick(new EventHandler(this.xlButton_Click));
  147.         getButton.setLocation(new Point(210, 120));
  148.         getButton.setSize(new Point(70, 20));
  149.         getButton.setTabIndex(1);
  150.         getButton.setTabStop(true);
  151.         getButton.setText("&Get");
  152.         getButton.addOnClick(new EventHandler(this.getButton_Click));
  153.         setButton.setLocation(new Point(210, 90));
  154.         setButton.setSize(new Point(70, 20));
  155.         setButton.setTabIndex(2);
  156.         setButton.setTabStop(true);
  157.         setButton.setText("&Set");
  158.         setButton.addOnClick(new EventHandler(this.setButton_Click));
  159.         edit.setBackColor(Color.WINDOW);
  160.         edit.setCursor(Cursor.IBEAM);
  161.         edit.setLocation(new Point(30, 90));
  162.         edit.setSize(new Point(170, 23));
  163.         edit.setTabIndex(3);
  164.         edit.setTabStop(true);
  165.         edit.setText("(Empty)");
  166.         label.setLocation(new Point(30, 70));
  167.         label.setSize(new Point(170, 20));
  168.         label.setText("Cell Value (Column A, Row 1)");
  169.         label.setTabIndex(5);
  170.         this.setNewControls(new Control[] {
  171.             label, 
  172.             edit, 
  173.             setButton, 
  174.             getButton, 
  175.             xlButton});
  176.     }
  177.     //NOTE: End of form designer support code.
  178. }
  179.