PRB: DhCell.getValue() Returns 0 for DhCell w/o Integer Value (196575)



The information in this article applies to:

  • Microsoft Visual J++ 6.0

This article was previously published under Q196575

SYMPTOMS

The setValue() and setText() APIs set the value of a DhCell.

If setText() is called with a non-integer value, the DhCell is assigned a value of 0.

STATUS

This behavior is by design.

MORE INFORMATION

The value of a DhCell is set by calling either the setValue() or the setText() method.

The following four instructions yield a value of zero because setText is called with a non-integer value:
DhCell cell=new DhCell(); // Create a DhCell element.
cell.setValue(10);   // The value of the cell is 10.
cell.setText("Hello"); // The value of the cell is now 0.
int cellValue = cell.getValue(); // cellValue=0.
				
The following four instructions yield a value of 123 because setText is called with an integer value (123):
DhCell cell=new DhCell(); // Create a DhCell element.
cell.setValue(10);   // The value of the cell is 10.
cell.setText("123"); // The value of the cell is now 123.
int cellValue = cell.getValue(); // cellValue=123.
				

Steps to Reproduce Behavior

  1. Create a default Code-Behind HTML project using Visual J++ 6.0. To do this, click New Project... from the File menu. Click the New tab in the New Project dialog box. Select Web Pages from the Visual J++ Projects tree. Select Code-Behind HTML, and click Open to create the project. Class1.java is created by default.
  2. Modify Class1.java as follows:
    import com.ms.wfc.html.*;
    import com.ms.wfc.core.*;
    import com.ms.wfc.ui.*;
    public class Class1 extends DhDocument
    {
       public Class1()
       {
          initForm();
       }
       private void initForm()
       {
       }
       protected void onDocumentLoad(Object sender, Event e)
       {
          DhTable table=new DhTable();
          table.setBorder(1);
          add(table);
          DhRow row=new DhRow();
          table.add(row);
          DhRow row2=new DhRow();
          table.add(row2);
          DhCell cell=new DhCell();
          row.add(cell);
          cell.setValue(5);
          row2.add(new DhCell("value:"+cell.getValue()));  // 5
    
          cell=new DhCell();
          row.add(cell);
          cell.setValue(12);
          cell.setText("HelloWorld");
          row2.add(new DhCell("value:"+cell.getValue()));  // 0
    
          cell=new DhCell();
          row.add(cell);
          cell.setText("-10");
          row2.add(new DhCell("value:"+cell.getValue()));  // -10
    
          cell=new DhCell();
          row.add(cell);
          cell.setText("38.3");
          row2.add(new DhCell("value:"+cell.getValue()));  // 0
       }
    }
    						
  3. Modify Page1.html as follows:
    <HTML>
    <BODY>
    <hr>
    <OBJECT classid="java:com.ms.wfc.html.DhModule"
         height=0 width=0 ... VIEWASTEXT>
    <PARAM NAME=__CODECLASS VALUE=Class1>
    <PARAM NAME=CABBASE VALUE=Project1.CAB>
    </OBJECT>
    <!-- Insert HTML here -->
    <FONT color=BLUE>
    <SPAN id="coloredText">Testing...</SPAN>
    </FONT>
    </BODY>
    </HTML>
    						
  4. Run the project.
RESULT: You will get the following web page:
   5         HelloWorld    -10          38.3
   value:5   value:0       value:-10    value:0
				

REFERENCES

For the latest Knowledge Base articles and other support information on Visual J++ and the SDK for Java, see the following pages on the Microsoft Technical Support site:

(c) Microsoft Corporation 1998, All Rights Reserved. Contributions by Derek Jamison, Microsoft Corporation.

Modification Type:MinorLast Reviewed:8/25/2005
Keywords:kbprb kbWFC KB196575