- 浏览: 603546 次
文章分类
- 全部博客 (411)
- 常用工具 (21)
- 喜好 (14)
- 英语 (3)
- java (51)
- ext (4)
- css (44)
- php (34)
- window (7)
- jquery (21)
- js (31)
- struts (4)
- tomcat (1)
- struts2 (11)
- 网络 (4)
- c# (7)
- linux (27)
- oracle (15)
- tag标签 (5)
- 生成静态页面 (6)
- sql (12)
- hibernate (13)
- DesignPattern (3)
- spring (2)
- flex (17)
- excel应用 (1)
- 报表 (2)
- 业界 (2)
- 数据建模 (1)
- 平板 (1)
- ppt (1)
- rich (1)
最新评论
-
youngdze:
受教了,谢谢!
十步解决php utf-8编码 -
DiLiya:
感谢你的讲解;帮了大忙了!
解决-innerHTML无法在TBODY中使用 -
eppen:
强的没话说。帮了大忙。感谢goby2008 ,感谢google ...
解决-innerHTML无法在TBODY中使用 -
cxs4808:
rr
flex 设计模式 -
liuxingvsyou:
3个jQuery弹出窗口插件
http://www.blogjava.net/19851985lili/articles/99128.html
对于大型的应用程序,
MM
及一些志同道合者,都认为和后台的数据交换应该采用
RO
的方式,因为这种方式更强大。
MM
提供的实例程序中就有这样一个:文件的结构是这样的:
1. 一个 mxml 文件: EDRemoteObject.mxml
它里面导入了两个 as 类,分别是 EmployeeVO.as 和 PhoneNumberVO.as ,这两个类存放在当前目录的 samples\data 子目录下,因此在 mxml 文件中要导入这两个类的包。因此在 script 中有代码: import samples.data.*;
声明
RemoteObject
,代码如下:
<mx:RemoteObject id="srv" source="samples.data.EmployeeService">
<mx:method name="addEmployee"/>
</mx:RemoteObject>
对代码的说明,
source
是指对应的在
samples\WEB-INF\classes\samples\data
下的
java
类(也就是
EmployeeService.class
文件)。
2.
对
EmployeeVO.as
的理解:
在
EmployeeVO.as
中有这样一行代码:
static var registered=
Object.registerClass("samples.data.EmployeeVO", samples.data.EmployeeVO);
该行代码声明的是一个类的映射(
class mapping
),括号中前一部分是
Java
类,后一个部分是
as
类。
注意的是:
java
和
as
的类名必须严格一致;
java
和
as
类的数据类型必须严格一致;另外,包的名称不是必须一致,但是推荐包名也保持一致。
3.
对
java
文件的理解:
Java
文件和相对应的
class
文件存放的目录是
samples\WEB-INF\classes\samples\data
;分别是
EmployeeService.java
、
EmployeeVO.java
、
PhoneNumberVO.java
,以及相对应的
class
文件。
Java 文件的理解不是很难,这里不再一一赘述了。但是值得注意的是,根据 MM 提供的源代码,程序的输出结果似乎是不可理解的,正要考虑是不是调用了别的什么函数。突然想到,可以反编译 class 得到 java 文件。于是反编译,果然, MM 提供的源代码中有部分的删节。反编译的 java 文件放在了 samples\WEB-INF\classes\samples\data\java bak 下面, EmployeeService.java 的代码里面还有一小部分尚未完全理解,有待进一步探讨。见另一篇文章:一个Remote Object的实例应用(从java到Flex)。
另外,本应用程序支持中文的输入,不需要作任何的改动。
以这个程序作为蓝本,对
Flex
和数据库的连接应该是很有帮助的。
昨天对
MM
提供的源代码中的关于
Remote Objecet
的一个应用程序,做了深刻的分析。剩下了一个小问题就是,对
samples\WEB-INF\classes\samples\data
下的
EmployeeService.java
(由
class
反编译得到的)文件中的一个方法,不是很理解,代码如下:
public List getEmployeeList()
{
DateFormat df = new SimpleDateFormat("mm/dd/yyyy");
ArrayList list = new ArrayList();
try
{
list.add(new EmployeeVO("Walter", "Mellon", 46000, df.parse("1/20/2001")));
…………
}
catch(ParseException e)
{
e.printStackTrace();
}
return list;
}
今天研究了一下,这个方法是向
flex
前台传送数据的,返回值的类型是
list
。
上网参照网友的例子,并参照
EDRemoteObject.mxml
,写了一个自己的应用程序。
程序源代码放在了
\samples\My_Examples\complexdata
文件夹下,文件名字
EDRemoteObjectRec.mxml
。
在这个应用程序中,定义了一个
Remote Object
,代码如下:
<mx:RemoteObject id="srv" source="samples.data.EmployeeService"
result="datagrid.dataProvider=event.result"
fault="alert(event.fault.faultstring, 'RemoteObject Error')">
<mx:method name="getEmployeeList"/>
</mx:RemoteObject>
其他的部分不再赘述。需要注意的是
result="datagrid.dataProvider=event.result"
,正是它定义了
datagrid
的
dataProvider
。
然后是一个显示结果的
datagrid
,不再赘述。
其实,这个应用很简单。
一个Remote Object的应用程序(从java到flex传送数据)
有很多朋友都问如何在flex中的2ge"窗体"(以下我也这么称呼)之间进行调用和传递参数
下面我就给大家讲解一下
1. 调用窗体
A 窗体是一个applicaton窗体 B 窗体是自定义窗体(类似Dialog之类的窗体,本身并不能独立运行)
A 窗体 片断代码如下:
.............
.............
<mx:Script><![CDATA[
import mx.containers.TitleWindow;
import mx.managers.PopUpManager;
function ShowDetailDialog(){
var oInitObj:Object = new Object();
oInitObj.title = "FX-Blog Details";
oInitObj.width = 400;
oInitObj.height = 480;
oInitObj.x = 350;
oInitObj.mainApp = this;
oInitObj.strDetailTitle
= "aaa"
;
oInitObj.strDetailDetails
= "bbb"
;
var DetailsDialogInstance:Object =
TitleWindow(PopUpManager.createPopUp(_root, B
, true, oInitObj, false))
}
]]></mx:Script>
<mx:Button label="Click" click="ShowDetailDialog()" width="61"/>
------------------
B 窗体 片断代码如下:
.............
.............
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.macromedia.com/2003/mxml"
closeButton="true"
click="this.deletePopUp();"
alpha="50" initialize="initComponent()">
<mx:Script><![CDATA[
public var mainApp:index = null;
public var strDetailTitle
:String;
public var strDetailDetails
:String;
}
]]></mx:Script>
<mx:TextArea" text="{strDetailTitle}" editable="false" width="100%" alpha="0" height="240" vScrollPolicy="auto"/>
<mx:TextArea" text="{strDetailDetails}" editable="false" width="100%" alpha="0" height="240" vScrollPolicy="auto"/>
</mx:TitleWindow>
--------------
以
上,当在A 窗体点击button的时候,触发Click event
然后调用ShowDetailDialog这个function,在这个function中红色的字体是必须要注意的,其中strDetailTitle
和strDetailDetails 这个2个变量就是要传递参数的变量和B 窗体中的strDetailTitle
和strDetailDetails 必须一致,否则flex中不认哦,这样当点击button后,就会调用B 窗体
并且把strDetailTitle 和strDetailDetails 传递到B 窗体的 textArea中了,其中var
DetailsDialogInstance:Object =
TitleWindow(PopUpManager.createPopUp(_root, B
, true, oInitObj, false)这个代码中的B一定要和A在同一个文件夹中,并且名字和和B的外部名称一致,否则也会失败的!
发表评论
-
flash cs4 调整渐变工具
2011-02-06 10:15 1179FLASH cs4的渐变变形工具和任意变形工具整合了,你在 ... -
Flex打印(转)
2010-12-07 23:21 1256打印实际上不是Flex的强项。你是否试过打印复杂的文档?报告是 ... -
Flex实践——Datagrid的打印预览与打印
2010-09-09 12:57 1270DataGridPrint.mxml <?xml ve ... -
FLEX4实践—DatagridColumn根据条件显示不同颜色(转)
2010-09-08 23:33 1138需求: 表格中存在不同的数据,要求将 name='Apple ... -
FLEX4实践—DropDownList与ComboBox
2010-09-08 23:27 2406FLEX4 相对 FLEX3的组件变化列表中列出以这么一项: ... -
FlashBuilder4,彻底解决“内存不足”“无法加载设计模式”问题
2010-09-08 16:06 6130FlashBuilder:4提示“内存不足,无法加载设计模式” ... -
Flex 学习网站
2010-08-23 10:45 545http://blog.minidx.com/2009/11/ ... -
一个Cairngorm的代码生成器
2010-02-05 16:32 923Caringen是一个Eric Feminella自己开发 ... -
代码格式化工具(Eclipse 插件)
2010-01-24 11:10 1497这是一款针对于Flex/ActionScript 3.0格 ... -
Flex : 从 ActionScript 中调用外部代码
2010-01-24 11:03 1439ExternalInterface.call() 方法 ... -
Flex : 自定义 Event
2010-01-24 10:53 902//myEvents\events\TestEvent.as ... -
Flex : 12个简单、使易用但是被人遗忘的函数
2010-01-24 10:52 7631.拷贝内容到剪贴板: System . se ... -
[译]AsyncToken入门
2010-01-21 16:48 1094From:http://blog.olivermerk.c ... -
FLex调试时用Debugger版问题
2010-01-13 14:52 1111Installed Flash Player Is Not a ... -
FLEX与Cairngorm框架学习使用心得体会
2010-01-12 23:00 1249公司近期选择FLEX作为RIA客户端,因此开始了对FLE ... -
flex 设计模式
2010-01-07 23:01 1687序言(Preface) 2策略模式(Strategy) 4工厂 ...
相关推荐
1. **定义Remote接口**:首先,我们需要定义一个QMetaObject兼容的类,该类包含了我们想要在进程间共享的方法和属性。使用`Q_OBJECT`宏声明MetaObject,并为每个需要共享的方法和属性添加信号和槽。 2. **创建...
Qt RemoteObjects是Qt框架中的一个高级特性,它允许在不同进程甚至不同设备之间进行对象通信。这个技术基于Qt的信号和槽机制,使得分布式系统开发变得更加简单和高效。本示例将详细介绍如何使用Qt RemoteObjects,...
RemoteObjects-VS2015-DemoQtRO 是一个针对Visual Studio 2015的示例项目,展示了如何在C++环境中利用Remote Objects技术与Qt的QtRO库进行远程对象交互。这个项目包含了配置、编译和运行的全部要素,帮助开发者了解...
4. **激活和暴露远程对象(Activation and Exposing the Remote Object)**:在服务器端,我们需要激活一个`RemoteCalculator`实例,并将其注册到服务器的应用程序域中,以便通过选定的通道进行访问。 5. **客户端...
在标题"TMS RemoteDB 1.13 Full Source.zip"中,我们了解到这是TMS RemoteDB的一个完整源代码版本,版本号为1.13。这通常意味着开发者或学习者可以深入理解其内部工作原理,并根据需求进行自定义修改。 描述中的...
图像分割是一种将图像划分成若干区域的技术,每个区域代表一个可能的物体或地物类型。这一过程通常基于相似性的度量,如颜色、纹理和形状等特征,将相邻且具有相似特性的像素聚类为同一区域,进而形成具有物理意义的...
RMI是Java平台的一个核心特性,它极大地简化了分布式计算。 在Java RMI中,远程对象是实现了特定接口的类的实例,这个接口被称为远程接口(Remote Interface)。远程接口必须扩展Java的`java.rmi.Remote`接口,并...
对于新手来说,这是一个非常实用的功能,可以帮助管理开发环境中的各种资源。 #### 2. `android list avds` 此命令用于列出当前系统中所有已创建的Android模拟器(AVDs)。这对于需要快速查看或选择特定模拟器的场景...
代理模式在软件设计中是一种常用的设计模式,它允许我们为一个对象提供一个替代品或占位符,以便控制对真实对象的访问。在远程方法调用(Remote Method Invocation,RMI)场景下,代理模式的应用尤为突出。RMI是Java...
【TMS RemoteDB 1.9.1】是一款由TMS Software公司开发的数据库组件套件,主要用于在Delphi编程环境中实现远程...如果你正在寻找一个可靠的解决方案来处理跨设备的数据交换,那么TMS RemoteDB无疑是一个值得考虑的工具。
RCF库是CORBA(Common Object Request Broker Architecture)的一个轻量级实现,它提供了一种高效、易于使用的方式来在不同的进程中或跨网络进行对象方法的调用。 **RCF库的核心概念:** 1. **远程接口(Remote ...
在IT行业中,远程节点上下文(Remote Node Context)是一个关键概念,特别是在分布式系统、网络编程以及云计算环境中。本文将深入探讨远程节点上下文对象的状态及其重要性,同时也会提及与之相关的`remote_node_...
StreamXpress是一个多格式视频流处理平台,广泛应用于广播和多媒体行业。它支持多种视频标准,包括MPEG-TS、DV、VBI等,并提供高精度的时钟恢复以及支持多通道同步输出。 Dektec的远程控制API是基于SOAP(Simple ...
远程方法调用(Remote Method Invocation,RMI)是Java编程语言中的一种机制,它允许一个对象的方法被运行在不同JVM(Java Virtual Machine)上的另一个对象调用。这个标题"RMI.rar_remote"暗示了这是一个关于Java ...
5. **连接到服务器**:在客户端,创建一个`QtRemoteObjects::TargetNode`,它代表了对服务器的连接。使用`QtRemoteObjects::QNodClient`连接到服务器的地址。 6. **获取远程对象引用**:客户端可以通过目标节点的`...
远程方法调用(RMI,Remote Method Invocation)是Java编程语言中的一种机制,它允许一个对象的方法被另一个网络上的对象调用,实现了分布式计算。在Java中,RMI是Java平台的一部分,它使得开发者可以创建分布式系统...
标题“afxCodeHook_remote_delphi_”涉及到的是一个与远程代码执行相关的技术,特别是与Delphi编程语言的高级实现有关。远程代码执行是指在一台计算机上执行由另一台计算机生成或传输的代码的能力,这在某些场景下...
标题中的"delphi_remote.rar_remote"表明这是一个使用Delphi编程语言编写的远程控制软件的源代码,主要功能是实现远程计算机的截图。Delphi是一种基于Object Pascal的集成开发环境(IDE),广泛用于创建Windows应用...