Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Загрузить форму из библиотеки в осн. приложение [D7, WinXP]


Mitchy ©   (2005-11-07 11:24:00) 

Здраствуйте!
Очень хотелось бы узнать, каким образом приложения, написаные с помощью майкрософтовских сред (напр. WinAmp, Miranda и т.п.), активно использующие внешние plugins встраивают окна настройки этих библиотек в свое окно. Редакторы ресурсов показывают их формы как dialog, а Делфовские формы совсем по другому.
Мой вопрос: каким образом нечто подобное сделать средствами Delphi???


ShiFT   (2005-11-07 12:04:00) [1]

Создаёшь Ресурс с Диалогом. Линкуешь к проекту и в проэкте пишешь:


const
 BtnOK = 1; // Идентифер оф Контрол.

function DlgProc( wnd: HWND; msg: Integer; wParam: wParam; lParam: lParam): lResult; stdcall;
begin
 Result := 0;
 case msg of
   WM_COMMAND: case LOWORD(wParam) of
     BtnOK: begin
       Result := 0;
       EndDialog( wnd, 1);
     end;
   end;
 else
   result := DefWindowProc( wnd, msg, wParam, lParam);
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 DialogBox( hInstance, 'DLG', Application.Handle, @DlgProc);
end;


Mitchy   (2005-11-07 11:57:00) [2]

О, Яндекс все-таки рулит.


Наверх

Титульная страница Поиск, карта сайта Написать письмо