当DBGRIDEH放在PageControl里面的时候,下面的代码就无效了 ( 积分: 50 )

  • 主题发起人 主题发起人 jemsn2
  • 开始时间 开始时间
J

jemsn2

Unregistered / Unconfirmed
GUEST, unregistred user!
各位朋友,代码如下,当DBGRIDEH独立放置在窗体,而不是放进PageControl里面的时候,下面的代码就可以正常写出配置文件,但当PageControl包含了DBGRIDEH的时候,配置文件就不能将DBGRIDEH的属性写出来了,请问该怎样改,才可以使DBGRIDEH即使在PageControl里面,也可以将它的各种属性写出来呢,请各位朋友赐教,多谢!!!
procedure TFrm_Load_Save_Control.Save_Load_Control(sform: TForm; Read_Write: string);
var
i, j: Integer;
begin
for i := 0 to sform.ControlCount - 1 do
begin

if sForm.Controls.ClassType = TDBGridEh then //Tdbgrideh
begin
(sform.Controls as TDBGridEh).Font.Charset := DEFAULT_CHARSET; //设置默认语言
(sform.Controls as TDBGridEh).Font.Name := 'MS Sans Serif'; //设置默认语言的字体
for j := 0 to (sform.Controls as Tdbgrideh).Columns.Count - 1 do
begin
if (sform.Controls as Tdbgrideh).Columns[j].Visible then //只要可见的列,不可见的列不需要
begin
if Read_Write = 'write' then
Write_Ini(sform.Name, 'TDBGridEh', sform.Controls.Name + IntToStr(j), (sform.Controls as TDBGridEh).Columns[j].title.caption); ;
if Read_Write = 'read' then
(sform.Controls as TDBGridEh).Columns[j].title.caption := Read_Ini(sform.Name, 'TDBGridEh', sform.Controls.Name + IntToStr(j));
end;
end;
end;



if sform.Controls.ClassType = TPageControl then
begin
(sform.Controls as TPageControl).Font.Charset := DEFAULT_CHARSET; //设置默认语言
(sform.Controls as TPageControl).Font.Name := 'MS Sans Serif'; //设置默认语言的字体
for j := 0 to (sform.Controls as TPageControl).PageCount - 1 do
begin
if Read_Write = 'write' then
Write_Ini(sform.Name, 'TPageControl', sform.Controls.Name + IntToStr(j), (sform.Controls as TPageControl).Pages[j].Name);
if Read_Write = 'read' then
(sform.Controls as TPageControl).Pages[j].Name := Read_Ini(sform.Name, 'TPageControl', sform.Controls.Name + IntToStr(j));
end;
end;
END;


配置文件只显示了以下的结果,而不能达到如期的效果,将DBGRIDEH的属性也一起写进配置文件

[TPageControl]
PageControl10=TabSheet1
PageControl11=TabSheet2
 
各位朋友,我将所有Control改成Components了,还是不行,希望有朋友可以赐教,谢谢!!!
 
procedure TForm1.Save_Load_Control(sform: TForm; Read_Write: string);
var
i, j: Integer;
begin
for i := 0 to sform.ComponentCount - 1 do
begin
if sForm.Components.ClassType = TDBGridEh then //Tdbgrideh
begin
with sform.Components as Tdbgrideh do begin
Font.Charset := DEFAULT_CHARSET; //设置默认语言
Font.Name := 'MS Sans Serif'; //设置默认语言的字体
for j := 0 to Columns.Count - 1 do
begin
if Columns[j].Visible then //只要可见的列,不可见的列不需要
begin
if Read_Write = 'write' then
Write_Ini(sform.Name, 'TDBGridEh', sform.Components.Name + IntToStr(j), Columns[j].title.caption);
if Read_Write = 'read' then
Columns[j].title.caption := Read_Ini(sform.Name, 'TDBGridEh', sform.Components.Name + IntToStr(j));
end;
end;
end;
end;

if sForm.Components.ClassType = TPageControl then
begin
with sform.Components as TPageControl do begin
Font.Charset := DEFAULT_CHARSET; //设置默认语言
Font.Name := 'MS Sans Serif'; //设置默认语言的字体
for j := 0 to PageCount - 1 do
begin
if Read_Write = 'write' then
Write_Ini(sform.Name, 'TPageControl', sform.Components.Name + IntToStr(j), (sform.Components as TPageControl).Pages[j].Name);
if Read_Write = 'read' then
Pages[j].Name := Read_Ini(sform.Name, 'TPageControl', sform.Components.Name + IntToStr(j));
end;
end;
end;
end;
END;

改成上面的,试了一下,没问题啊
 
如果你想花最少的钱学习流行的计算机技术,本人低价提供
计算机专业高清晰 视 频 教 程,所有教程由业内名家讲解,物超所值,
所有光盘4元/张,特快专递全国三天内到货.
联系方式:手 机:1 3 5 76145612(手机联系佳) Q Q:108410943
E-mail:ncncldjjg@126.com
1、Oracle9iOCP(Oracle认证专家DBA)视频教程(23CD)
2、SQL语言、数据挖掘、SQLServer2000视频教程(6CD)
3、计算机网络原理视频教程(4CD)
4、计算机实用组网技术视频教程(3CD)
5、MCSE(微软认证系统工程师)认证视频教程(11CD)
6、windows2003即学即会视频教程(6CD)
7、J2EE Web程序开发定向班/Java就业班视频教程
(java基础jsp核心技术UML设计)(13CD)
8、J2EE基础高级案例分析视频教程(9CD)
9、马士兵J2SE入门与精通(含坦克大战、BBS实例)视频教程(6CD)
10、java语言深入详解视频教程(12CD)
11、java技术从入门到精通视频教程(21CD)
12、javascript全接触视频教程(13CD)
13、各类网站源程序(9CD)
14、unix原理视频教程(3CD)
15、Linux软件开发工程师(C语言)视频教程(4CD)
16、Linux配置、管理、优化实战工程师视频教程(8CD)
17、Linux内核编程视频教程(11CD)
18、C语言详解视频教程(2CD)
19、VC++6.0(MFC)开发技术术详解视频教程(6CD)
20、ASP.NET中文视频教程(3CD)
21、洪恩C#入门多媒体教程(1CD)
22、XML技术视频教程(2CD)
23、操作系统视频教程(3CD)
24、网络技术基础视频教程(2CD)
25、数据结构视频教程(5CD)
26、清华大学计算机专业多媒体教程(数据结构、汇编、编译原理等)(13CD)
27、大学数学[离散数学线性代数概率与数理统计微积分]视频教程(22CD)
28、LearnKey Asp.Net (老外用英语讲课)(13CD)
29、LearnKey Asp.Net Webservice(老外用英语讲课)(5CD)
30、AppDev Asp.Net2.0 UsingC# (老外用英语讲课)(1CD)
31、APPDev .Net Framework(老外用英语讲课)(2CD)
32、林清安pro/e2001(野火版)视频教程(18CD)
33、深圳大学3D设计视频教程(4CD)
34、3DMAX建模视频教程(老外用英语讲课)(6CD)
35、3DMAX纹理与贴图材质灯光视频教程(老外用英语讲课)(5CD)
36、3DMAX格式500个常用模型库(4CD)
37、lightscape基础入门视频教程(2CD)
38、聚光制造(lightscape3.2入门与精通视频教程)(4CD)
39、coreldraw12中文版入门与精通swf格式视频教程(2CD)
 

Similar threads

后退
顶部