如题
delphi中bpl里传值怎么传?
delphi中bpl里传值怎么传?
解决方案 »
- 如何让edit1的hints 的内容分行显视?
- Tchar中 x轴是日期,该怎么设定??????谢谢高手们救命!
- dll 出错后怎么释放错误?
- zzf2001355 徽酥清风在吗?谢谢你提供的D5,已经可以安装了..
- Self和Application未定义?
- 关于InterBase数据库配置的问题
- 关于创建线程的问题
- 请问如何在WIN2000/XP系统启动时让F8键无效,无法进入安全模式?
- shelltreeview 和shelllistview 搭配,怎么取得shelllistview中的文件名
- 有谁知道C:\windows\system\IExplorr.exe是什么程序?
- dfm文件的里的inherited
- 寻找主机托管服务商
公共变量是一种方法,另外回调也是一种方法,或者带参数直接调用BPL中相关函数或过程的地址也是一种方法。
能否简单说明。
先谢谢了。
应为我在主程序里面抓不到BPL子窗体。
主窗体unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,uIPlugin, Menus, ActnPopup, ToolWin, ActnMan, ActnCtrls,
ActnList, XPStyleActnCtrls, StdStyleActnCtrls, ExtCtrls, jpeg, ImgList,
StdActns, ComCtrls;type
TForm1 = class(TForm)
Image1: TImage;
Image2: TImage;
ToolBar2: TToolBar;
ToolButton9: TToolButton;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
OpenDialog: TOpenDialog;
MainMenu1: TMainMenu;
File1: TMenuItem;
FileNewItem: TMenuItem;
FileOpenItem: TMenuItem;
FileCloseItem: TMenuItem;
FileSaveItem: TMenuItem;
FileSaveAsItem: TMenuItem;
N1: TMenuItem;
FileExitItem: TMenuItem;
Edit1: TMenuItem;
CutItem: TMenuItem;
CopyItem: TMenuItem;
PasteItem: TMenuItem;
Window1: TMenuItem;
WindowCascadeItem: TMenuItem;
WindowTileItem: TMenuItem;
WindowTileItem2: TMenuItem;
WindowMinimizeItem: TMenuItem;
WindowArrangeItem: TMenuItem;
Help1: TMenuItem;
HelpAboutItem: TMenuItem;
ActionList1: TActionList;
FileNew1: TAction;
FileOpen1: TAction;
FileClose1: TWindowClose;
FileSave1: TAction;
FileSaveAs1: TAction;
FileExit1: TAction;
EditCut1: TEditCut;
EditCopy1: TEditCopy;
EditPaste1: TEditPaste;
WindowCascade1: TWindowCascade;
WindowTileHorizontal1: TWindowTileHorizontal;
WindowTileVertical1: TWindowTileVertical;
WindowMinimizeAll1: TWindowMinimizeAll;
WindowArrangeAll1: TWindowArrange;
HelpAbout1: TAction;
ImageList1: TImageList;
procedure ToolButton9Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
AForm: TCustomForm;
FPackageHandle: Integer;
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ToolButton1Click(Sender: TObject);
begin
if aform.ComponentIndex=0 then exit;
aform.Destroy;
unloadpackage(FPackageHandle);
FPackageHandle:=0;
end;procedure TForm1.ToolButton9Click(Sender: TObject);
var
AClass: TPersistentClass;
begin
if FPackageHandle = 0 then begin
FPackageHandle := LoadPackage(ExtractFilePath(Application.ExeName) + 'pckg\package1.bpl');
AClass := GetClass('TForm2');
if AClass <> nil then begin
showmessage(inttostr(FPackageHandle));
uiplugin.iii:=FPackageHandle;
aform := TCustomForm(AClass.Create).Create(Application);
AForm.Show; end;
end;
end;end.PBL 窗体unit Unit2;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,uiplugin;type
TForm2 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
FPackageHandle: Integer;//想在这里接值
{ Public declarations }
end;var
Form2: TForm2;implementation{$R *.dfm}
procedure TForm2.Button1Click(Sender: TObject);
begin
edit1.Text:='test pckg' ;
end;procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
close;
end;initialization
registerclass(TForm2);finalization
UnRegisterClass(TForm2);end.
然后在bpl窗体中把值传到主窗体中那有应该怎样写呢?