我有一个带有aprox的表单,上面有200个可视组件,上面分配了很多事件,我现在需要将它更改为框架,我没有足够的时间复制所有组件,重新排列所有可视组件,重新分配所有事件,对齐等。所以,我复制了pas和dfm,打开并开始在文本编辑器中编辑它们(将TForm更改为Tframe等),但似乎没有得到预期的结果。
有谁有办法解决这个问题吗?
发布于 2011-01-27 19:08:20
观察项目中窗体和框架的区别。
首先是project.dpr源代码:
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit3 in 'Unit3.pas' {Frame3: TFrame};
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.差异:
Dfm文件:
object Form1: TForm1
Left = 0
Top = 0
Caption = 'Form1'
ClientHeight = 348
ClientWidth = 643
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
end和
object Frame3: TFrame3
Left = 0
Top = 0
Width = 320
Height = 240
TabOrder = 0
endFrame没有这些属性:
Sidenote: Frame没有这些事件:
框架没有这样的全局变量:
var
Form1: TForm1;框架来自TFrame,而form来自TForm。
注意:使用Frame/Form继承,您的步骤会变得有点长。
--jeroen
发布于 2011-01-27 18:02:44
TForm将具有TFrame没有的其他属性和事件。您需要手动删除这些属性和事件才能更改为form to frame。
一定要遵循这些步骤;
View as Text选项。View as Form选项。发布于 2012-01-13 21:16:59
如果没有任何开箱即用的工作(专有的/开源的),那么花时间一次性开发一个执行批量操作的IDE expert,然后你就完成了。
https://stackoverflow.com/questions/4814748
复制相似问题