CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

寻找能够保存窗口位置和大小的控件?

楼主Lin(林)2000-02-27 18:54:00 在 Delphi / VCL组件开发及应用 提问

小弟现在需要一个能在程序退出自动将自己的位置、大小保存到注册表、再次运行又能自行恢复的控件,有源码最好!想偷懒^.^ 问题点数:50、回复次数:11Top

1 楼yijun2000()回复于 2000-02-27 21:40:00 得分 0

  goto   www.torry.ru    
  lots   of   it.Top

2 楼bunny()回复于 2000-02-27 22:12:00 得分 15

在Delphi下编写这样的程序我没有做过,不过,在C++Builder下编写这样的程序我做过,相信它们是相似的吧!希望对你有所帮助。  
  源程序如下:  
  引用头文件:   registry.hpp  
  创建窗体时将注册表中的信息读入;  
  void   __fastcall   TForm1::FormCreate(TObject   *Sender)  
  {  
      const   String   RegKey   =   "\\software\\My   Soft\\Test";  
      TRegistry   *MyRegistry   =   new   TRegistry();  
      try   {  
          if(MyRegistry->OpenKey(RegKey,   false))   {  
              Top           =   MyRegistry->ReadInteger("Top");  
              Left         =   MyRegistry->ReadInteger("Left");  
              Height     =   MyRegistry->ReadInteger("Height");  
              Width       =   MyRegistry->ReadInteger("Width");  
              MyRegistry->CloseKey();  
          }  
      }  
      catch(ERegistryException   &E)   {  
          ShowMessage(E.Message);  
          delete   MyRegistry;  
          return;  
      }  
      delete   MyRegistry;  
  }  
  窗体关闭时将位置及大小等信息写入注册表;  
  void   __fastcall   TForm1::FormClose(TObject   *Sender,   TCloseAction   &Action)  
  {  
      const   String   RegKey   =   "\\software\\My   Soft\\Test";  
      TRegistry   *MyRegistry   =   new   TRegistry();  
      try   {  
          if(MyRegistry->OpenKey(RegKey,   true))   {  
              MyRegistry->WriteInteger("Top",Top);  
              MyRegistry->WriteInteger("Left",Left);  
              MyRegistry->WriteInteger("Height",Height);  
              MyRegistry->WriteInteger("Width",Width);  
              MyRegistry->CloseKey();  
          }  
      }  
      catch(ERegistryException   &E)   {  
          ShowMessage(E.Message);  
          delete   MyRegistry;  
          return;  
      }  
      delete   MyRegistry;  
  }  
  Top

3 楼Firing_Sky(火的天空)回复于 2000-02-27 22:23:00 得分 0

这……也要用控件吗?自己写也很方便啊!Lin你真是懒啊!(其实我也一样   ^_^)Top

4 楼Lin(林)回复于 2000-02-28 09:09:00 得分 0

To   bunny:  
          这样我也做过,不过我想要一个控减,这样就不需要重复很多这样的代码了。不过还是要感谢你。  
   
  To   Firing_Sky:  
          一时不想写,就只好向大家伙要了。你有没有,分可以酌情给你?Top

5 楼supershan()回复于 2000-02-28 09:39:00 得分 0

为什么要用控件,退出时把位置存到INI中,再次运行从INI中读数据就可以了。Top

6 楼xlili(liker)回复于 2000-02-28 09:45:00 得分 0

直接写ini不就行了。如果真的要,  
  AHM或RXLIB中有。Top

7 楼Firing_Sky(火的天空)回复于 2000-02-28 18:59:00 得分 30

那好,我试着写一个给你Top

8 楼kxy(手举穿肠毒药,怀抱刮骨钢刀)回复于 2000-02-28 19:25:00 得分 0

LMD的控件包中有,我一直用它来保存设置:)Top

9 楼Lin(林)回复于 2000-02-28 19:29:00 得分 0

To   Firing_Sky:  
  写好邮至jiazhonglin@sina.comTop

10 楼Firing_Sky(火的天空)回复于 2000-02-28 23:34:00 得分 5

我已经邮出去了,带了一个Demo,不过看kxy给你的的回复,恐怕你不需要它了   :(Top

11 楼Lin(林)回复于 2000-02-29 12:36:00 得分 0

To   all:  
  Thaksssssssss   for   help!Top

相关问题

  • 控件大小
  • 寻找控件!!!!!!!!!!!!!!!!!!!!!!!!
  • 寻找控件
  • ~~寻找控件~~~~~~~~~
  • 寻找控件。。。
  • 寻找控件
  • 寻找menu控件!
  • 寻找一控件
  • 寻找一控件
  • 控件大小问题

关键词

  • 控件
  • top
  • myregistry
  • readinteger
  • writeinteger
  • 保存
  • tregistry
  • regkey
  • 注册表
  • 大小

得分解答快速导航

  • 帖主:Lin
  • bunny
  • Firing_Sky
  • Firing_Sky

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo