Вниз
Скачать: CL | DM;

Dialog в DLL   Найти похожие ветки 

← →
Димон   (2004-12-24 12:35) [0]

Необходимо, чтобы при вызове функции из DLL появлялось
диалоговое окно.
Пытался сделать так
function A(...):boolean;stdcall
...
Form1:=TForm1.Create(Application);
Form1.ShowModal();
Form1.Free;
...
end;
при этом окно появлялось, но при закрытии
функция не делала то, что ей надо


← →
stone ©   (2004-12-24 12:38) [1]

Result := Form1.ShowModal = mrOk


← →
Skier ©   (2004-12-24 12:39) [2]

1) Передаётся ли библиотеке Handle вызывающего приложения ?


> но при закрытии
> функция не делала то, что ей надо

2)Поясни...


← →
Digitman ©   (2004-12-24 12:40) [3]


> при закрытии
> функция не делала то, что ей надо


а что ей, кстати, "надо" ?


← →
Димон   (2004-12-24 12:52) [4]

функция зашумляет изображение, передаваемое ей в качестве параметра.
Если не вызывать диалог все Ok, шум появляется, но при вызове
окна фукнция не "шумит".
Окно необходимо для задания параметров шума


← →
Digitman ©   (2004-12-24 13:01) [5]


> Окно необходимо для задания параметров шума


ну так ты же своими руками и прибил форму (см. Form1.Free) !

как же ты далее собрался считывать параметры, если они у тебя, к примеру, хранятся как поля объекта Form1 и "умирают" вместе со "смертью" формы ?

Form1:=TForm1.Create(Application);
try
if Form1.ShowModal = mr_ok then
 begin
 //здесь считываем параметры
 end;
//здесь собственно "шумим"
finally
Form1.Free; //а здесь уничтожаем форму за дальнейшей ненадобностью
end;


← →
KSergey ©   (2004-12-24 13:14) [6]

А мне все же кажется, что лучше в dll отвязать ф-ции обработки изображений от диалога с пользователем.
Вернее даже так сказать: в dll оставить ф-ции собственно обработки, принимаеющие на входе параметры обработки, а весь интерфейс с пользователем возложить на host-приложение. И проще, и - правильнее, на мой взгляд... Хотя, может и не во всех случаях, но мне кажется, чт это как раз тот случай, когда это будет вернее.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
6-1098074567
XAdmin
2004-10-18 08:42
2005.01.09
Создание CGI приложения на Kylix, выбор технологии


8-1096609183
Ozone
2004-10-01 09:39
2005.01.09
Video + Audio


1-1103650760
denik
2004-12-21 20:39
2005.01.09
Окаймление для Edit.


4-1101295677
ocean
2004-11-24 14:27
2005.01.09
Как сделать "Ctrl+V" в чужом приложении?


1-1103716877
UVV
2004-12-22 15:01
2005.01.09
Время




   Наверх