起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 153|回复: 9

【结】只读属性**

[复制链接]
发表于 2008-4-15 14:42:58 | 显示全部楼层 |阅读模式
图中是个DataGrid。在他的双击事件下写如下代码~
procedure TGLXX.DataGrid1DblClick(Sender: TObject);
var
  strparam:string;
begin
  strparam:=DataGrid1.DataSource.DataSet.FieldByName('BH').AsString;
  if strparam='' then
  begin
    dialogs.ShowMessage('没有任何可显示的内容!');
  exit;
   end
else
  invokefunction('Biz:OABGZDHXTRCFYBXSQ.Func',strparam);
end;

上面代码第五行调出相关信息。怎么样实现调出来的信息都是只读的?(功能涉及到流程、图中显示的是流程完结以后的调出的信息)

未命名.jpg

31.8 KB, 下载次数: 103

回复

使用道具 举报

发表于 2008-4-15 15:14:13 | 显示全部楼层
可以考虑设置数据集的只读或者文档的只读
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-15 15:23:01 | 显示全部楼层
怎么设置啊?文档的只读怎么搞?要代码 ?给出几句~
1楼中11行代码~invokefunction('Biz:\OABGZDHXT\RCFYBXSQ.Func',strparam);
我只是调出了信息。。。现在是不知道在哪里设置啊 ???
回复 支持 反对

使用道具 举报

发表于 2008-4-15 15:32:31 | 显示全部楼层
docview.readonly
dataset.readonly
TFormDoc.Readonly
TSheetDoc.Readonly
这些都行啊 ,就看你怎么做了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-15 17:10:31 | 显示全部楼层
我是不知道写在哪里。是写在双击事件里还是哪里?比如在下面的代码中要+到哪里?
procedure TSWXX.DataGrid1DblClick(Sender: TObject);
var
   fileid:string;
   lFunc: TFunc;
  lTmpStr: string;
  lContext: TContext;
begin
Fileid:=DataGrid1.DataSource.DataSet.FieldByName('SWBH').AsString;

if Fileid ='' then
begin
  dialogs.ShowMessage('没有任何内容可以显示!');
exit;
end
else
begin
   lFunc:=SysTemCore.TSystemCore.FuncManager.FindRunning(lTmpStr);
   lTmpStr:='Biz:\OABGZDHXT\LWDJ.Func';
  if Assigned(lFunc) then
  begin
   SystemCore.TSystemCore.FuncManager.ActivateFunc(lFunc);
   Exit;
  end;
   lContext := TContext.Create(Context.Owner, Context.Parent) ;
   lFunc:=SystemCore.TSystemCore.FuncManager.CreateFunc(lContext, lTmpStr);
  lFunc:=SystemCore.TSystemCore.FuncManager.RunFunc(Context.Parent, '', lTmpStr , Fileid, nil, False);
end;

可以帮我补充完整么!!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-15 17:12:47 | 显示全部楼层
接上楼!
错了。。是把docview.readonly
dataset.readonly
TFormDoc.Readonly
TSheetDoc.Readonly
以上的代码加到5楼的代码中的哪里才合适。。。
回复 支持 反对

使用道具 举报

发表于 2008-4-15 17:41:46 | 显示全部楼层
楼主,你这个功能除了这里调用外,其他的地方都不运行这个功能,或者说其他调用这个功能也是需要这些信息只读?
如果是,最简单的方法,就是直接在设计期间把这个功能某一个属性设置为只读为可以了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-16 07:56:27 | 显示全部楼层
比如上面是日常费用申请单。。要经过添申请单----审核-----审批。。。前面的地方我都做了相应的只读,现在是在DataGrid1DblClick中运行这个功能。它就会全部信息都是可以编辑的。我想要它是只读~
回复 支持 反对

使用道具 举报

发表于 2008-4-16 08:53:02 | 显示全部楼层
procedure RunFunc(AContext: TContext; const AUniqueID, AFuncURL, AParams: string; UseUI: Boolean; BeforeRunFunc: TFuncNotifyEvent; Modal: Boolean); overload;
参数说明:
AContext:创建功能实例的环境
AFuncURL:要运行的功能URL
[B]AParams:创建功能实例时,传递的参数,获取参数的方法是
        FuncBroker.Func.Parameters[/B]
然后你在被调用的那个功能主窗体的onshow事件中根据这个参数值来设置只读或者不只读
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-16 11:00:12 | 显示全部楼层
OK。。结T了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-11 02:13 , Processed in 0.053125 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表