Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Ресурсы в DLL   Найти похожие ветки 

 
Eagle Owl ©   (2004-03-15 19:47) [0]

Вечер добрый, мастера!
Подскажите, пожалуйста, как в DLL засунуть меню, диалоговые окна и строки в виде ресурсов и потом использовать их в программе?
Спасибо.


 
YuRock ©   (2004-03-15 20:20) [1]

Пример:

файл "main.rc":

#define IDI_MAINICON 10

IDI_MAINICON ICON main.ico

IDD_MAINDIALOG DIALOG 0, 0, 100, 166
STYLE WS_OVERLAPPEDWINDOW
CAPTION "Облегчитель работы с Зарплатой"
 {
  CONTROL "", 1, Edit, WS_HSCROLL|WS_VSCROLL|ES_MULTILINE|ES_WANTRETURN|ES_AUTOHSCROLL|ES_AUTOVSCROLL, 0, 0, 100, 166, WS_EX_CLIENTEDGE
 }


файл "main.dpr":

{$APPTYPE GUI}
program ft;

uses SysUtils, Windows, Messages;

const
 IDI_MAINICON = 10;

var
 hDlg: HWND;

function MainDlgMsgProc(hwndDlg: HWND; message: DWORD; wParam: DWORD; lParam: LONGINT): BOOL; stdcall;
begin
 Result := FALSE;
 case message of
   WM_INITDIALOG: begin
     hDlg := hwndDlg;
     SendMessage(hwndDlg, WM_SETICON, ICON_SMALL, LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MAINICON)));
   end;
   WM_CLOSE: begin
     SendMessage(hwndDlg, WM_DESTROY, 0, 0);
   end;
   WM_DESTROY: begin
     EndDialog(hwndDlg, 1);
   end;
 end;
end;

{$R main.res}
begin
 DialogBox(hInstance, "IDD_MAINDIALOG", 0, @MainDlgMsgProc);
end.


PS1: Надо, естественно скомпилить main.rc и получить main.res

PS2: Используя F1 можно узнать и про меню и про все остальное


 
Eagle Owl ©   (2004-03-15 22:02) [2]

Спасибо!



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.054 c
14-1078927826
Yurchik
2004-03-10 17:10
2004.04.04
Нужен uses CommonFunc.pas(.dcu). Помогите плиииссс.


14-1079092146
Awersom
2004-03-12 14:49
2004.04.04
Чат


3-1078331942
Rauf
2004-03-03 19:39
2004.04.04
Проблемы с TADOTable


14-1078935501
juiceman
2004-03-10 19:18
2004.04.04
справочник WinApi


14-1078843781
Dlorean
2004-03-09 17:49
2004.04.04
Полетела файловая система FAT32!