社区
C++ Builder
帖子详情
如何存窗体上的多个控件和把保存的多个控件读到窗体上
oyzm
2002-07-26 10:09:38
TFileStream * stream=new TFileStream("c\\test.smt",fmCreate|fmOpenWrite);
stream->WriteComponent(Edit1);
delete stream;
这段代码只能写一个edite1到文件
如果我有多个edit1还有IMAGE1那应如何才能全写入文件
...全文
65
8
打赏
收藏
如何存窗体上的多个控件和把保存的多个控件读到窗体上
TFileStream * stream=new TFileStream("c\\test.smt",fmCreate|fmOpenWrite); stream->WriteComponent(Edit1); delete stream; 这段代码只能写一个edite1到文件 如果我有多个edit1还有IMAGE1那应如何才能全写入文件
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
caomeng2002
2002-09-06
打赏
举报
回复
当然有些控件如MEMO你的用类似下面的函数读回,我就是这么做的
先定义
TMemo *me=TMemo(this);
在把me放在函数中
void StringToComponent1(TComponent* Component,const AnsiString& Value)
{
TStringStream* ss;
TMemoryStream* ms;
ss = new TStringStream(Value);
try
{
ms = new TMemoryStream;
try
{
ObjectTextToBinary(ss, ms);
ms->Position = 0;
ms->ReadComponent(Component);
}
__finally
{
delete ms;
}
}
__finally
{
delete ss;
}
}
caomeng2002
2002-09-06
打赏
举报
回复
请看这俩个函数
AnsiString CToString(TComponent *c)
{
TMemoryStream* ms;
TStringStream* ss;
ss = new TStringStream(" ");
ms = new TMemoryStream;
try{
ms->WriteComponent(c);
ms->Position = 0;
ObjectBinaryToText(ms, ss);
ss->Position = 0;
return ss->DataString;
}
__finally
{
delete ms;
delete ss;
}
return ss->DataString;
}
//---------------------------------------------------------------------------
TComponent* StringToComponent(AnsiString as)
{
TMemoryStream* pms = new TMemoryStream();
TStringStream* pss = new TStringStream(as);
TComponent *pc;
try
{
ObjectTextToBinary(pss, pms);
pms->Seek(0, soFromBeginning);
}
catch(...)
{
ShowMessage("Streaming error.");
}
pc = pms->ReadComponent(NULL);
delete pms;
delete pss;
return pc;
}
关键是用流ReadComponent和WriteComponent枚举窗体上的控件保存成string 再从STRING 到COMPONENT。
oyzm
2002-07-31
打赏
举报
回复
没人会吗?
oyzm
2002-07-30
打赏
举报
回复
ReadComponent每次操作只能读一个控件,如果我文件中存了很多控件怎么办?
kingcaiyao
2002-07-30
打赏
举报
回复
WriteComponent
ReadComponent
oyzm
2002-07-30
打赏
举报
回复
如何读这些控件到窗体上啊?
oyzm
2002-07-30
打赏
举报
回复
帮我
zbc
2002-07-26
打赏
举报
回复
TFileStream *stream = new TFileStream("C:\\test.smt",fmcreate|fmOpenWrite);
for(int i = 0;i<=this->Components->Count -1;i++)
stream->WriteComponent(this->Components[i]);
delete stream;
198个经典C#WinForm实例源码 超赞的完整版
"198个经典C#WinForm实例源码"包括: 1-
窗体
技巧 2-
控件
操作 3-图像操作 4-报表打印 5-系统操作 6-文件处理 7-网络操作 8-数据库操作 9-加密解密 10-硬件读写 11-游戏设计 "超赞的198个经典C#WinForm实例源码.zip " ~欢迎同学们下载共同学习~
C#
多个
窗体
共享同一个SerialPort
控件
在使用SerialPort
控件
时,能够发现虽然可以把它拖拽到窗口上,但它并不会显示在
窗体
上,而是在
窗体
的下面,这说明此
控件
并不是一个可视化的
控件
,类似的
控件
还有Timer。正是由于SerialPort的这种特性,使得我们可以不必采用拖拽的方式添加此
控件
,而是直接在代码中添加。 现在有两个
窗体
,分别是Form1和Form2,其中Form1是主
窗体
,现在想要在Form1中打开串口,然后在Form2中进...
窗体
、
控件
的使用
控件
的事件处理与
控件
的访问
多个
窗体
之间的跳转
C#之
窗体
应用程序设计:
窗体
、
控件
的使用 实验内容:在主窗口上放置一ListBox和两个Button,Button1和Button2;新建Window
窗体
Form2,在Form2上放置一button;要求主
窗体
居中显示。点击主
窗体
上的button1,,弹出
窗体
Form2,实现点击Form2
窗体
上的按钮时,在Form1的ListBox
控件
里面添加任意字符串; 在Form2
窗体
上添加合适的
控件
,要求输入一十进制数,输出这个数的八进制和二进制; 步骤: 打开vs,新建WPF文件,打开工具箱,拖动需要的
控件
至FO
C# 遍历
控件
,遍历某EXE中的所有
窗体
以及
窗体
上的
控件
大家好,我是赤道上的小熊,最近在做一个二开设计平台,要实现遍历某EXE中的所有
窗体
以及
窗体
上的
控件
,下面的实现方式不仅可以找到
窗体
中已经
存
在的
控件
,通过程序动态创建的
控件
也可以遍历到(例如:Button button2 = new Button()),希望对大家所有帮助。 PS:该实现方式必须和要寻找的
窗体
在同一项目中 //获取EXE中的
控件
值 string strRes ...
6.5(二)
窗体
中
控件
及其应用添加
控件
(上)
使用
控件
向导向
窗体
上添加
控件
是一种基本方法。在
窗体
上添加
控件
后,往往还需要在设计视图中,对所添加的
控件
属性进行某些设置。 (1)添加文本框 例 添加文本框
控件
,用来分别显示当前系统日期、显示密码、显示当前记录的汇总。操作步骤如下: 1)打开数据库,在“创建”选项卡的“
窗体
”分组中,单击“
窗体
设计”按钮,创建一个新的
窗体
,打开该
窗体
的设计视图,同时,打开“设计”选项卡. 2)在“设计”选项卡的“
控件
”分组中,单击“文本框”按钮,鼠标移到
窗体
上,显示文本框图标,按...
C++ Builder
13,874
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章