老铁们,大家好,相信还有很多朋友对于dialogarguments和instruct的固定搭配的相关问题不太懂,没关系,今天就由我来为大家分享分享dialogarguments以及instruct的固定搭配的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
在Android开发中,DialogArguments 是一个经常被使用但又不被充分理解的组件。它主要用于在Activity与Dialog之间传递数据。今天,我们就来深入探讨一下DialogArguments的应用与技巧。
一、什么是DialogArguments?
DialogArguments 是一个类似于Map的类,它允许你将键值对存储在Dialog中,并在需要时从Dialog中获取这些值。它通常用于在Activity和Dialog之间传递数据,使得数据传递更加灵活和方便。
二、DialogArguments的使用方法
1. 创建Dialog
你需要创建一个Dialog。这可以通过继承Dialog类或使用AlertDialog.Builder来实现。
“`java
Dialog dialog = new Dialog(context);
dialog.setContentView(R.layout.dialog_layout);
“`
或者
“`java
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setView(R.layout.dialog_layout);
Dialog dialog = builder.create();
“`
2. 创建DialogArguments
然后,创建一个DialogArguments对象,并将需要传递的数据添加到这个对象中。
“`java
Bundle arguments = new Bundle();
arguments.putString(“
IntraWeb怎样实现模式弹出窗口
在intraweb中实现弹出式窗口,一直是一个比较难的问题。在浏览网页时看见的不知道对你有没有帮助。不知道是不是你想要的那种效果。如果有帮助还希望您能够采纳,谢谢!废话不多说了下面我们正式入题:
单击主页面中的返回数据输入框或点击按钮,就会出现右边的对话框,在对话框中填写数据,点击确认按钮后就可以把数据传给主页面中的输入框内。
首先要明确实现思路:
1、首先UserSessionUnit中创建以下变量
varTempform:TIWBaseForm;
FData:String;
FClose:Boolean;
varTempform用来记住弹出对话框的母窗口,此例中为Unit1窗口,FData用来传递对话框中传入的数据。FClose用来通知intraweb是否Free对话框窗口。
2、在ServerController加入以下事件,此函数目的是:在每次产生新的页面之前,分析从浏览器地址传回的数据,如果page参数的值为Dialogform,则生成TIWForm2的页面并显示出来。同时判断UserSession.FClose的真假,如果为真,表示对话框被关闭了,则将此值改为假,再将要显示的新页面设置为UserSession.varTempform,同时free对话框TIWForm2的页面。
procedure TIWServerController.IWServerControllerBaseBeforeRender(
ASession: TIWApplication; AForm: TIWBaseForm; var VNewForm: TIWBaseForm);
var
WebPara:STring;
begin
WebPara:=ASession.Request.QueryFields.Values['page'];
if WebPara='Dialogform' then
begin
VNewForm:=TIWForm2.Create(ASession);//生成TIWForm2的页面并显示出来
end;
if UserSession.FClose then
begin
UserSession.FClose:=False;
//将要显示的新页面设置为UserSession.varTempform
VNewForm:=UserSession.varTempform;
WebApplication.ActiveForm.Free;// free对话框TIWForm2的页面
end;
end;
3、在Unit1窗口中加入IWButton1,将其隐藏在按钮IWButton2后面(将IWButton2的zindex设为1即可),给该按钮写如下事件,该事件将会被对话框网页关闭时调用。
procedure TIWForm1.IWButton1AsyncClick(Sender: TObject;
EventParams: TStringList);
begin
IWEdit1.Text:=UserSession.FData;//将对话框网页输入的参数传递给主页面的输入框
UserSession.FClose:=True;//表示对话框已经被关闭了
UserSession.varTempform:=Self;//对话框网页的母窗口
end;
4、给IWButton2加入如下事件,其实就是组合window.showModalDialog(sURL [, vArguments] [, sFeatures])网页模式对话框。
procedure TIWForm1.IWButton2Click(Sender: TObject);
var
tmp:string;
begin
tmp:='window.showModalDialog('+''''+';);IWBUTTON1_onclick();';
//生成的字符如下
//window.location.host网站根地址,即上面的127.0.0.1:90
//GTrackID即上面的1,每次都会变化
//GAppID即上面的01o09u11y1ds5i1gg8a2e0it26or
// Dialogform我们前面在2中提到的参数page的值,一定要对应
//IWBUTTON1_onclick()就是对TIWForm1.IWButton1AsyncClick(Sender: TObject;EventParams: TStringList);事件的调用
//因为IWServerController.ExecCmd:='index.htm',所以用index.htm
AddToInitProc(tmp);
end;
以下为补充说明:
网页模式对话框使用方法如下:
vReturnValue= window.showModalDialog(sURL [, vArguments] [, sFeatures])
参数说明:
sURL
必选参数,类型:字符串。用来指定对话框要显示的文档的URL。
vArguments
可选参数,类型:变体。用来向对话框传递参数。传递的参数类型不限,包括数组等。对话框通过window.dialogArguments来取得传递进来的参数。
sFeatures
可选参数,类型:字符串。用来描述对话框的外观等信息,可以使用以下的一个或几个,用分号“;”隔开。
dialogHeight对话框高度,不小于100px,IE4中dialogHeight和dialogWidth默认的单位是em,而IE5中是px,为方便其见,在定义modal方式的对话框时,用px做单位。
dialogWidth:对话框宽度。
dialogLeft:距离桌面左的距离。
dialogTop:离桌面上的距离。
center:{yes| no| 1| 0}:窗口是否居中,默认yes,但仍可以指定高度和宽度。
help:{yes| no| 1| 0}:是否显示帮助按钮,默认yes。
resizable:{yes| no| 1| 0}[IE5+]:是否可被改变大小。默认no。
status:{yes| no| 1| 0}[IE5+]:是否显示状态栏。默认为yes[ Modeless]或no[Modal]。
scroll:{ yes| no| 1| 0| on| off}:指明对话框是否显示滚动条。默认为yes。
5、对话框Unit2中的事件如下:
procedure TIWForm2.IWAppFormCreate(Sender: TObject);
begin
UserSession.FData:='';//将参数置空
end;
procedure TIWForm2.IWButton2AsyncClick(Sender: TObject;
EventParams: TStringList);
begin
UserSession.FData:='';//给参数赋值
AddToInitProc('window.close();');//加入关闭网页的代码
end;
procedure TIWForm2.IWButtonAsyncClick(Sender: TObject;
EventParams: TStringList);
begin
//这里处理数据交换问题
UserSession.FData:=IWEdit1.Text;//给参数赋值
AddToInitProc('window.close();');//加入关闭网页的代码
end;
JavaScript中的showDialog()方法中的参数有哪些
基本介绍:
showModalDialog()(IE 4+支持)
showModelessDialog()(IE 5+支持)
window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框。
window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框。
使用方法:
vReturnValue= window.showModalDialog(sURL [, vArguments] [,sFeatures])
vReturnValue= window.showModelessDialog(sURL [, vArguments] [,sFeatures])
参数说明:
sURL–必选参数,类型:字符串。用来指定对话框要显示的文档的URL。
vArguments–可选参数,类型:变体。用来向对话框传递参数。传递的参数类型不限,包括数组等。对话框通过window.dialogArguments来取得传递进来的参数。
sFeatures–可选参数,类型:字符串。用来描述对话框的外观等信息,可以使用以下的一个或几个,用分号“;”隔开。
1.dialogHeight:对话框高度,不小于100px,IE4中dialogHeight和 dialogWidth默认的单位是em,而IE5中是px,为方便其见,在定义modal方式的对话框时,用px做单位。
2.dialogWidth:对话框宽度。
3.dialogLeft:离屏幕左的距离。
4.dialogTop:离屏幕上的距离。
5.center:{yes| no| 1| 0}:窗口是否居中,默认yes,但仍可以指定高度和宽度。
6.help:{yes| no| 1| 0}:是否显示帮助按钮,默认yes。
7.resizable:{yes| no| 1| 0} [IE5+]:是否可被改变大小。默认no。
8.status:{yes| no| 1| 0} [IE5+]:是否显示状态栏。默认为yes[ Modeless]或no[Modal]。
9.scroll:{ yes| no| 1| 0| on| off}:指明对话框是否显示滚动条。默认为yes。
下面几个属性是用在HTA中的,在一般的网页中一般不使用。
10.dialogHide:{ yes| no| 1| 0| on| off}:在打印或者打印预览时对话框是否隐藏。默认为no。
11.edge:{ sunken| raised}:指明对话框的边框样式。默认为raised。
12.unadorned:{ yes| no| 1| 0| on| off}:默认为no。
用windowshowModalDialog打开窗体之后如何关闭
1.showModalDialog打开的窗口想访问父窗口的数据的话代码window.showModalDialog(“filename.htm”,window)\x0d\x0a在子窗体中用window.dialogArguments得到就是你的父窗体对象,这样就能访问到父窗体数据了.\x0d\x0a2.在子窗体应用的文件的head区之间添加代码
关于dialogarguments到此分享完毕,希望能帮助到您。




