Hi,

Im trying to position a DynAPI scrollpane within a table cell. What I would 
like to do is to have the scrollpane aligned to the top left hand corner of 
a table cell. However the properties of the table can change from page to 
page ie number of cells, cell sizes.

My understanding is that the moveTo() function positions the scrollpane 
relative to the frame or document that contains the scrollpane. Ive been 
using Javascript to obtain the x and y coordinates of an anchor tag placed 
in the table cell that I am interested in. However this method only works 
when the anchor tag is placed outside a table... when its inside the table 
it takes its origin from the table cell.

The source code I have been mucking about with is below. Any help would be 
greatly appreciated!

Best Regards,

Mark Fletcher

<html>
<head>
<title>DynAPI Examples - ScrollPane</title>
<!--<meta http-equiv="Refresh" content="5">-->
<script language="JavaScript" src="../src/dynapi.js"></script>
<script language="Javascript">
DynAPI.setLibraryPath('../src/lib/');
DynAPI.include('dynapi.api.*');
DynAPI.include('dynapi.event.*')
DynAPI.include('dynapi.util.thread.js');
DynAPI.include('dynapi.util.pathanim.js');
DynAPI.include('dynapi.gui.dynimage.js');
DynAPI.include('dynapi.gui.button.js');
DynAPI.include('dynapi.gui.scrollbar.js');
DynAPI.include('dynapi.gui.viewport.js');
DynAPI.include('dynapi.gui.scrollpane.js');
DynAPI.include('dynapi.gui.label.js');
</script>
<script language="Javascript">

function findPOR() {

}




//-->
</script>
</head>
<body bgcolor="#ffffff" >
<p>Hello World</p>
&nbsp;
&nbsp;
&nbsp;
&nbsp;
&nbsp;
&nbsp;
<table border="1">
<tr>
<th>Col1</th>
<th>Col2</th>
</tr>
<td>Some info here</td>
<td>Some more info</td>
</tr>
<tr>
<td>Another bit of info</td>
<td>
<script>
DynAPI.onLoad = function() {
        // vars HM_NS4, HM_NS4old and HM_Mac identifiy location of POR
        var     HM_NS4 = (document.layers) ? true : false;
        var     HM_NS4old = (HM_NS4 && (parseFloat(navigator.appVersion) < 4.02));
        var     HM_Mac = (navigator.appVersion.indexOf("Mac") != -1);
        var ns=(HM_NS4 && !HM_NS4old || HM_Mac);

        // Determine x and y coordinates of anchor, dependent on whether browser is
        // Netscape 4 or not
        if (ns) {
                // NS4 Code
                for (var i=0; i < document.anchors.length; i++) {
                        if (document.anchors[i].name == 'placescrollerhere') {
                                var xcoord = document.anchors[i].x;
                                var ycoord = document.anchors[i].y;
                break;
                        }
                }
        } else {
                // IE5 and NS6 Code
                for (var i=0; i < document.anchors.length; i++) {
                        if (document.anchors[i].name == 'placescrollerhere') {
                                var xcoord = document.anchors[i].offsetLeft;
                                var ycoord = document.anchors[i].offsetTop;
                        break;
                        }
                }
        }


        label1 = new Label('<table border=1><tr><td width=160 height=160>label 1 
alk jskj slkj k dkjkj dk skslkdjf lskd f</td></tr></table>')
        label1.setWrap(false)
        label1.setPadding(5)
        label1.setBgColor('cyan')
        label1.setSize(160,160)

        label2 = new Label('<table border=1><tr><td width=200>label 2 aslk asdkfjd 
kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd 
kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf 
lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk 
asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds 
lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf 
jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk 
asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds 
lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf 
jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk 
asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds 
lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf 
jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk 
asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds 
lkdjf ksdjf lskdf jsdlk</td></tr></table>')
        label2.setWidth(200)
        label2.setWrap(false)
        label2.setPadding(5)
        label2.setBgColor('yellow')
        label2.pack()

        label3 = new Label('<table border=1><tr><td width=160 height=500>label 3 
aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd 
kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd 
kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf 
lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk 
asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds 
lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf 
jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk 
asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds 
lkdjf  kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds  kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd 
kfdjf dk dk fjd kfjds</td></tr></table>')
        label3.setWrap(false)
        label3.setPadding(5)
        label3.setWidth(100)
        label3.packHeight()
        label3.setBgColor('magenta')

        label4 = new Label('<table border=1><tr><td width=600>label 4 aslk asdkfjd 
kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd 
kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf 
lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk 
asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds 
lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf 
jsdlk aslk asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk 
asdkfjd kfdjf dk dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk asdkfjd kfdjf dk 
dk fjd kfjds lkdjf ksdjf lskdf jsdlk aslk</td></tr></table>')
        label4.setPadding(5)
        label4.setBgColor('00eeb0')
        label4.pack()

        scrollobj = new ScrollPane(label1)  // label1 will be set as the content
        scrollobj.setSize(150,150)
        //scrollobj.moveTo(xcoord,ycoord)
        scrollobj.setBgColor('#c0c0c0')

        DynAPI.document.addChild(scrollobj)
}
</script>
<!--<br>set scroll size: <a href="javascript:scrollobj.setSize(150,150)" 
name="placehere">150</a>, <a 
href="javascript:scrollobj.setSize(250,250)">250</a>, <a 
href="javascript:scrollobj.setSize(350,350)">350</a>
<br>set label1 size: <a href="javascript:label1.setSize(100,100)">100</a>, 
<a href="javascript:label1.setSize(140,140)">140</a>, <a 
href="javascript:label1.setSize(200,200)">200</a>

<p><a href="javascript:scrollobj.setContent(label1)">Add Label #1 to 
ScrollPane</a>
<br><a href="javascript:scrollobj.setContent(label2)">Add Label #2 to 
ScrollPane</a>
<br><a href="javascript:scrollobj.setContent(label3)">Add Label #3 to 
ScrollPane</a>
<br><a href="javascript:scrollobj.setContent(label4)">Add Label #4 to 
ScrollPane</a> -->
<a name="placescrollerhere">
</td>
</tr>
</table>


</body>
</html>


_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.


_______________________________________________
Dynapi-Help mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/dynapi-help

Reply via email to