A janelas criadas com a tag CFWINDOW podem ser posicionadas através dos atributos “x” e “y” da tag, mas em algumas situações precisamos posicionar a janela dinamicamente, em função de um outro elemento HTML da página. Para solucionar este problema precisamos ir além do ColdFusion e manipular a biblioteca ExtJS diretamente (mais detalhes sobre a biblioteca aqui).
O código a seguir demonstra como fazer isso, note o método alignTo do objeto myWindow que é o responsável por alinhar a janela ao elemento HTML:
<cfset qContatos = QueryNew(“objectId,fone”, “VarChar,VarChar”)>
<cfset QueryAddRow(qContatos)>
<cfset QuerySetCell(qContatos, “objectId”, CreateUUID())>
<cfset QuerySetCell(qContatos, “fone”, “1111-1111″)>
<cfset QueryAddRow(qContatos)>
<cfset QuerySetCell(qContatos, “objectId”, CreateUUID())>
<cfset QuerySetCell(qContatos, “fone”, “2222-2222″)>
<cfset QueryAddRow(qContatos)>
<cfset QuerySetCell(qContatos, “objectId”, CreateUUID())>
<cfset QuerySetCell(qContatos, “fone”, “3333-3333″)>
<script>
try
{
myWindow = ColdFusion.Window.getWindowObject(‘contatos’);
myWindow.destroy(true);
ColdFusion.objectCache['contatos'] = null;
}
catch(err) {}
</script>
<script>
createToolTip=function( alignId, text )
{
myWindow = ColdFusion.Window.getWindowObject( “contatos” );
myWindow.toolbox.remove();
myWindow.alignTo(alignId,‘t?’,[-180,20]);
myWindow.body.update(text)
ColdFusion.Window.show( “contatos” );
}
destroyToolTip=function()
{
ColdFusion.Window.hide( “contatos” );
}
</script>
<cfwindow name=“contatos” initShow=“false” closable=“false” height=“70″ width=“180″/>
<cfoutput query=“qContatos”>
<a href=“##” id=“#objectId#” onmouseover=“javascript: createToolTip( ‘#objectId#’, ‘#fone#’)” onmouseout=“javascript: destroyToolTip()”>Teste</a><br /><br /><br />
</cfoutput>
Tags: cfwindow, ColdFusion
Hi,
I was looking out for the code of the following flex charting component… i found ur comment on that blog, do u have the souce code for that component.
The link is: http://www.stretchmedia.ca/blog/index.cfm/2007/8/14/Google-Finance-with-Flex-Code
Thanks.