| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1807 人关注过本帖
标题:如何保存修改后的控件属性?
只看楼主 加入收藏
lyquestc
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2018-3-10
结帖率:85.71%
收藏
已结贴  问题点数:10 回复次数:8 
如何保存修改后的控件属性?
如题,我在命令按钮的click事件里修改了控件的属性(caption的内容),但是,退出(release thisform)该表单后,重新打开,该控件的属性还是原来的内容。我该怎么保存修改后的控件属性呢?
搜索更多相关主题的帖子: 保存 修改 控件 属性 内容 
2018-03-19 21:50
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10538
专家分:42927
注 册:2014-5-20
收藏
得分:4 
运行时,修改时改变的是内存数据,关闭应用后就释放了。
或者想想怎样做,关闭应用程序后,再重新运行时,打开表单时的状态是之前关闭前的状态。也就是说,怎样保存表单的某些数据,需要时可恢复使用这些数据。
2018-03-19 22:12
lyquestc
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2018-3-10
收藏
得分:0 
难道要创建一个数据库表,修改后,把数据填入表,运行时再把表数据修改到属性中?
2018-03-19 23:19
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10538
专家分:42927
注 册:2014-5-20
收藏
得分:0 
以下是引用lyquestc在2018-3-19 23:19:41的发言:

难道要创建一个数据库表,修改后,把数据填入表,运行时再把表数据修改到属性中?

是的,代码运行在内存,数据保存在外存。
2018-03-20 07:18
丁春秋yxp
Rank: 4
等 级:贵宾
威 望:10
帖 子:245
专家分:296
注 册:2017-10-31
收藏
得分:4 
直接在属性窗口修改caption就可以了
2018-03-20 15:14
井绳
Rank: 2
等 级:论坛游民
帖 子:97
专家分:69
注 册:2010-6-29
收藏
得分:4 
用注册表记住,程序装载时恢复
2018-03-22 06:41
lyquestc
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2018-3-10
收藏
得分:0 
回复 6楼 井绳
如何用注册表记住?
2018-03-22 19:04
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10538
专家分:42927
注 册:2014-5-20
收藏
得分:0 
用DBF也可以,更方便操作。
2018-03-22 20:03
井绳
Rank: 2
等 级:论坛游民
帖 子:97
专家分:69
注 册:2010-6-29
收藏
得分:0 
我的方法如下:
1,在Destroy事件中记入注册表
#DEFINE HKEY_CLASSES_ROOT 2147483648 && 0x80000000,或用负数: -2147483648
#DEFINE HKEY_CURRENT_USER 2147483649 && 0x80000001,-2147483647
#DEFINE HKEY_LOCAL_MACHINE 2147483650 && 0x80000002,-2147483646
#DEFINE HKEY_USERS 2147483651 && 0x80000003,-2147483645
#DEFINE HKEY_PERFORMANCE_DATA 2147483652 && 0x80000004,-2147483644
#DEFINE HKEY_CURRENT_CONFIG 2147483653 && 0x80000005,-2147483643
#DEFINE HKEY_DYN_DATA 2147483654 && 0x80000006,-2147483642
cMyRegPath    =    "Software\VFP\"+JUSTSTEM(SYS(1271,THIS))
THIS.串口控制.Registry.Setregkey("Top",ALLTRIM(STR(THIS.Top)),cMyRegPath,HKEY_CURRENT_USER,.T.)
THIS.串口控制.Registry.Setregkey("Left",ALLTRIM(STR(THIS.Left)),cMyRegPath,HKEY_CURRENT_USER,.T.)
THIS.串口控制.Registry.Setregkey("记录时长",ALLTRIM(STR(THIS.串口控制.记录时长)),cMyRegPath,HKEY_CURRENT_USER,.T.)
IF !EMPTY(THIS.串口控制.可用串口.Value)
    THIS.串口控制.Registry.Setregkey("最后串口",THIS.串口控制.可用串口.Value,cMyRegPath,HKEY_CURRENT_USER,.T.)
ENDIF
IF !EMPTY(THIS.串口控制.位置_nmea)
    THIS.串口控制.Registry.Setregkey("Path_Nmea",THIS.串口控制.位置_nmea,cMyRegPath,HKEY_CURRENT_USER,.T.)
ENDIF

2,在Iint事件中恢复
#DEFINE HKEY_CLASSES_ROOT 2147483648 && 0x80000000,或用负数: -2147483648
#DEFINE HKEY_CURRENT_USER 2147483649 && 0x80000001,-2147483647
#DEFINE HKEY_LOCAL_MACHINE 2147483650 && 0x80000002,-2147483646
#DEFINE HKEY_USERS 2147483651 && 0x80000003,-2147483645
#DEFINE HKEY_PERFORMANCE_DATA 2147483652 && 0x80000004,-2147483644
#DEFINE HKEY_CURRENT_CONFIG 2147483653 && 0x80000005,-2147483643
#DEFINE HKEY_DYN_DATA 2147483654 && 0x80000006,-2147483642

*!*    注册表位置
cMyRegPath    =    "Software\VFP\"+JUSTSTEM(SYS(1271,THIS))
*!*    设置用户窗口位置顶部
cTop    =    ""
THIS.串口控制.Registry.GetRegKey("Top",@cTop,cMyRegPath,HKEY_CURRENT_USER)
IF ISDIGIT(cTop)
    THIS.Top    =    VAL(cTop)
ENDIF
*!*    设置用户窗口位置左边
cLeft    =    ""
THIS.串口控制.Registry.GetRegKey("Left",@cLeft,cMyRegPath,HKEY_CURRENT_USER)
IF ISDIGIT(cLeft)
    THIS.Left    =    VAL(cLeft)
ENDIF
*!*    设置用户原定记录时长
记录时长    =    ""
THIS.串口控制.Registry.GetRegKey("记录时长",@记录时长,cMyRegPath,HKEY_CURRENT_USER)
IF ISDIGIT(记录时长)
    THIS.串口控制.记录时长    =    INT(VAL(记录时长))
    THIS.串口控制.时长.Comment    =    记录时长
ENDIF
*!*    设置用户最后使用的串口
最后串口    =    ""
THIS.串口控制.Registry.GetRegKey("最后串口",@最后串口,cMyRegPath,HKEY_CURRENT_USER)
IF !EMPTY(最后串口)
    THIS.串口控制.可用串口.Comment    =    最后串口
ENDIF
*!*    设置文件存放位置
Path_Nmea    =    ""
THIS.串口控制.Registry.GetRegKey("Path_Nmea",@Path_Nmea,cMyRegPath,HKEY_CURRENT_USER)
IF !EMPTY(Path_Nmea)
    THIS.串口控制.位置_nmea    =    ADDBS(Path_Nmea)
ENDIF

3,注册表位置:
HKEY_CURRENT_USER\Software\VFP\gps仪表
2018-03-23 12:53
快速回复:如何保存修改后的控件属性?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018041 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved