Форум: "WinAPI";
Текущий архив: 2005.09.11;
Скачать: [xml.tar.bz2];
ВнизПример использования формы(на WinAPI) в dll. Найти похожие ветки
← →
Antonn © (2005-07-20 12:58) [0]Подкиньте, пожалуйста, примерчик или ссылку, как такое реализовать. Нашел примеры по использованию формы из dll, но там все на vcl, а мне надо на winapi форму и прогресс_бар. Не могу понять, как вообще это делать.
И, если можно, как на WinApi создать контрол с закладками(типа TTabbedNotebook)?
← →
Eraser © (2005-07-20 13:37) [1]Antonn © (20.07.05 12:58)
Всё это реализуется через API ф-ии CreateWindow/CreateWindowEx.
← →
Anatoly Podgoretsky © (2005-07-20 18:46) [2]WinAPI не в курсе насчет форм
← →
GrayFace © (2005-07-20 23:13) [3]Дай мне, пожалуйста, пример с VCL.
На WinApi, по сути, нет разницы - в dll или нет. Для уменьшения размера кода можешь поискать заменители VCL, можно использовать KOL (не знаю, что это, но штука известная. Наверное, тоже заменитель).
← →
Antonn © (2005-07-21 08:48) [4]GrayFace © (20.07.05 23:13) [3]
я хотел на Апи для маленького размера, потом глянул сколько геммора и но понятного, и сдался vcl.
Причем что понравилось в методе ниже, форму видно(Shift+F12) и можно редактировать.
//--------------- dpr dll -------------
library FID;
uses
Classes,
Unit1 in "Unit1.pas" {Form1};
exports
Create_Form,
Destroy_Form;
end.
//------------------------------------
//--------------- pas формы -------------
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
procedure Create_Form(AppHandle: THandle); stdcall;
procedure Destroy_Form; stdcall;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure Create_Form(AppHandle: THandle);
begin
Application.Handle := AppHandle;
Form1 := TForm1.Create(Application);
Form1.ShowModal;
end;
procedure Destroy_Form;
begin
Form1.Free;
end;
end.
//------------------------------------
//-------------- в проекте подключаешь (статика) -----------------
..
procedure Create_Form(AppHandle: THandle); stdcall; external "FID.dll";
procedure Destroy_Form; stdcall; external "FID.dll";
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
try
Create_Form(Application.Handle);
finnaly
Destroy_Form;
end;
end;
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.09.11;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c