关于一些比较基础的问题?(150分)

  • 主题发起人 主题发起人 liyipeng
  • 开始时间 开始时间
L

liyipeng

Unregistered / Unconfirmed
GUEST, unregistred user!
1、请问如何实现在运行状态中动态添加控件?如按一下按钮添加一个文本框。
2、如何实现外部DLL、OCX的调用。就是如何声明DLL,如何将OCX引用到开发环境中。
3、在什么地方可以找到中文版的DELPHI帮助,最好是CHM格式的。
 
var
edit1: Tedit;

begin
...
edit1 := TEdit.Create(Self);
edit1.Parent := self;
edit1.left := 100;
edit1.top := 100;
...

end;
 
顺便问一下DELPHI中的控件数组是如何实现的?:)
 
这是以前我作的一简单例子
放一button,label
然后:
procedure TForm1.Button1Click(Sender: TObject);
begin
newbutton:=tbutton.create(self);
if (newbutton is tbutton) then
label1.caption:='控件以建立 ';
with newbutton do
begin
parent:=form1;
left:=250;
top:=130;
width:=80;
height:=30;
caption:='newbutton';
newbutton.onclick:=newbuttonclick;


end;

end;
procedure TForm1.FormCreate(Sender: TObject);
begin
if not (newbutton is tbutton)then
label1.caption:='控件还没有建立';
end;
procedure Tform1.newbuttonclick(sender:tobject);
begin
label1.caption:='user click newbutton';
end;

end.
 
新的控件产生没什么问题,但是新的控件的事件处理怎么解决?
 
运用控件的TAG属性
可实现控件数组
 
请问如何使用TAG属性?
 
请以上诸位在回答一下,如果声明DLL,如何是实现控件数组,如何添加一个类似VB
中的模块的模块(因为我想将一些函数写在一起,不想和事件处理程序放在一起)
 
>新的控件产生没什么问题,但是新的控件的事件处理怎么解决?
新的控件.事件:=你的过程序名; //注意你的过程名和事件的参数声名要一样


>顺便问一下DELPHI中的控件数组是如何实现的?
Form1.ControlCount 可以昨到Form1的控件数;
例: for i:=0 to ControlCount-1 do
if (Controls is TEdit) then
(Controls as TEdit).Text:='text'; //也可写成 TEdit(Controls).Text:='text';

也可以自己加入控件数组: TObjectList; 要加入contnrs单元
可以看Delphi的帮助;






 
声明DLL:(静态的办法)
在implementation单元内加入类似以下的语句
function Stock_Init(hWnd:HWND;Msg:UINT;nWorkMode:integer): Integer;
stdcall; external 'JNDLL.DLL' name '_Stock_Init@12';

控件数组:
请参考539267和536181,都有源码的

添加一个类似VB中的模块的模块:
VB没用过,无法明白你的意思
 
VB中模块好象是一个集合似的,你可以在里面定义函数和变量(一般都是全局的),然后
程序可以随时调用里面的东西,不知道能不能和DELPHI的数据模块划等号,VB中的控件数
组非常简单易用,DELPHI中有没有类似的使用方法。

VB:将两个可视的控件起一个名字,系统就问是不是建立控件数组,然后是,就可以了,
用的时候就是 控件名[X].属性或方法,我感觉DELPHI的怎么这么费劲,应该不是什么高深
技术吧?
 
我明白了!

添加一个类似VB中的模块的模块:
建立一个单元(unit_all),里面放你需要的函数和变量
在需要引用得单元的implementation里加上uses unit_all
 
zyy04模块的回答很感谢,声明时应该注意些什么,您能给简单说一下吗?
这样您就有100分到手了,至于最后的50分,我希望能够得到一个比较简洁
的运用控件数组的方法。
 
控件数组的问题我自己基本解决了,当然也有各位的功劳。

好了,谢谢了。
 
控件数组的问题我自己基本解决了,当然也有各位的功劳。

好了,谢谢了。

不好意思,忘了给分了。哈哈啊
 
后退
顶部