以下是我的码:
================================================= ========================================
DPR单원대码
프로그램Mdiform;
용도
양식,
UMdiformin'UMdiform.pas'{메인폼},
UDMin'UDM.pas'{GlobalDM:TDataModule},
UFunin'UFun.pas';
{$R*.res}
시작하다
응용 프로그램.초기화;
Application.CreateForm(TMinform,Mainform);
응용 프로그램.실행;
끝.
================================================= =============================================
주요 대표자:
단위UMdiform;
인터페이스
용도
Windows, 메시지, SysUtils, 변형, 클래스, 그래픽, 컨트롤, 양식,
대화상자,Udm,StdCtrls;
유형
TMainform=클래스(TForm)
버튼1:T버튼;
ProcedureButton1Click(Sender:TObject);
ProcedureFormCreate(Sender:TObject);
사적인
{개인선언}
공공의
MyHandle:HWND;
{공개선언}
끝;
var
메인폼:T메인폼;
유형
T_ShowTestMng=function(varadm:TMainform):Boolean;StdCall;
구현
{$R*.dfm}
절차TMainform.Button1Click(Sender:TObject);
var
Lib_:THandle;
_ShowTestMng:T_ShowTestMng;
시작하다
Lib_:=LoadLibrary(pchar('MdiChild.dll'));
노력하다
@_ShowTestMng:=GetProcAddress(Lib_,'_ShowTestMng');
ifnot(@_ShowTestMng=nil)그러면
_ShowTestMng(메인폼);
마지막으로
FreeLibrary(Lib_);
끝;
끝;
ProcedureTMainform.FormCreate(Sender:TObject);
시작하다
MyHandle:=애플리케이션.핸들;
끝;
끝.
================================================= ============================================
子窗体DLL대명:
libraryMdiChild;
용도
ShareMem,
UMdiform,//此单元为父窗体单元, 는 顶目设置中我已经设置了搜索此单에서 元路径.
양식,
SysUtils,
수업,
UChildin'UChild.pas'{FrmChild};//FrmChild子 형식의 FormStyle属性为FsMDIChild
{$R*.res}
function_ShowTestMng(varadm:TMainform):Boolean;StdCall;
시작하다
결과:=true;
애플리케이션.핸들:=adm.MyHandle;
Application.CreateForm(TFrmChild,FrmChild);//程序就休此:休错原因是:양식을 만들 수 없습니다.NoMDI양식이 현재 활성 상태입니다.
FrmChild.Show;
끝;
수출
_ShowTestMng;
끝.