SAS中文论坛

标题: 很多af问题 [打印本页]

作者: shiyiming    时间: 2003-10-9 15:29
标题: 很多af问题
1.我想改变frame的size变小,不要老是全屏显示,而且想让它在屏幕中心。
Properties _frame_中的height 和width好像不管用,call wregion好像也不管用。
2.我想打开我的每个frame界面都要通过我的身份验证,即通过一个身份验证的frame界面,也不知道该怎么做。
3.我还想让客户不能改我的frame界面和scl程序,也不知道该怎么做。
作者: shiyiming    时间: 2003-10-9 17:05
你的问题我以前也遇到过,以我的理解,给出如下意见或建议:

问题1:在properties窗口,其它控间的尺寸和位置都是以像素(pixes)为单位,而frame的尺寸并非如此,且其宽度和高度之间也各不相同,我到现在也没搞清楚它到底是以什么为单位。解决的办法只能是不断地测试,不断地修改,直到符合要求为止。

问题2:我没有完全理解你的意思,能否说得再清楚一点。

问题3:我的解决办法是,用cport过程将相应的catalog压缩成SAS传递文件,其间使用“nosrc”选项将SCL代码隐藏,再用cimport过程将上述传递文件解压缩,生成的catalog中将不会出现有关SCL代码的项目,但程序运行不受任何影响。

个人意见,敬请各位批评指正。
作者: shiyiming    时间: 2003-10-9 17:46
谢谢student;以下补充

问题一:其实我意图是想做一个小对话框,例如做一个confirm的对话框,回答“是”就继续,“否”就停止。就像关闭SAS时所跳出的“Are you sure you want to end the SAS session”那种。我不想用program做,界面太难看。用frame做老找不到办法使它变得那么小。
问题二:大的方面来说吧,就是想问各位是怎样使只有那些被授权的用户才能进入你所做的frame界面。例如我做了三个数据录入界面和一个用户及密码验证界面,我想做的是:只有通过了用户密码验证的人才能进入我的那三个数据录入界面,也就是说在进入我那三个数据录入界面之前一定要先通过用户及密码验证界面。
问题三:student的方法可以保护scl程序,但是frame界面呢?如果客户也有af模块,那岂不是可以随意更改我的frame界面。

万分感激!
作者: shiyiming    时间: 2003-10-10 11:52
1、frame的大小和位置是可以调节的,我一般用在init里用call wdef( 1, 1, 100, 100)。其实你目前的需求更可以用messagebox()实现。
2、对2个页面之间的连接和排斥我也没有什么方法直接实现,我的思路是设定一个全局宏变量,通过验证设为'Y'。其他页面的init里都读取这个宏变量,如果不为'Y'则直接link term跳出页面。
3、我一般用proc build来实现。具体option你还要查一下help,总之是类似于nosource,nomodifiy之类的,这样就可以阻止用户看你的scl和修改frame了。




欢迎光临 SAS中文论坛 (http://mysas.net/forum/) Powered by Discuz! X3.2