Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.04.30;
Скачать: [xml.tar.bz2];

Вниз

Проблема с MessageDlg!   Найти похожие ветки 

 
Dyakon_Frost ©   (2006-04-12 16:53) [0]

Здравствуйте!
Есть проблема:
Вот простенькая процедура:

Procedure Lab3Record(SG1: TStringGrid; SD1: TSaveDialog; OD1: TOpenDialog); stdcall;
var i,j: integer;
begin
if OD1.Execute then
 OD1.FileName;

AssignFile(f,OD1.FileName);
Reset(f);
for i := 1 to 5 do
for j := 1 to 5 do
 read(f,b[i,j]);

if MessageDlg("Хотите транспонировать матрицу",mtConfirmation,[mbYes, mbNo],0) = mrYes then

for i := 1 to 5 do
for j := 1 to 5 do
 c[i,j] := b[j,i];

for i := 1 to 10 do
for j := 1 to 10 do
 SG1.Cells[j-1,i-1] := FloatToStr(c[i,j]);

CloseFile(f);
end;


Проблема с MessageDlg - выдает ошибку, вопрос: в чем дело?

Заранее спасибо!


 
Fay ©   (2006-04-12 16:59) [1]

Если выдаёт ошибку, значит ты что-то где-то не так написал.


 
Плохиш ©   (2006-04-12 17:02) [2]


> if OD1.Execute then
>  OD1.FileName;

Это ещё что-такое?


 
Dyakon_Frost ©   (2006-04-12 17:02) [3]

Ну это понятно! Дело в том, что если писать в программе, то все нормально, а когда в dll-ке выдает ошибку. Видимо не подключил какой-то модуль, а вот какой вопрос!


 
Dyakon_Frost ©   (2006-04-12 17:04) [4]

"Плохиш" - указываю путь к файлу используя OpenDialog1!


 
Плохиш ©   (2006-04-12 17:04) [5]

ShareMem?


 
Fay ©   (2006-04-12 17:04) [6]

2 Dyakon_Frost ©   (12.04.06 17:02) [3]
> когда в dll-ке
ЧТО "в dll-ке" ? "Писать" или ЧТО ?


 
Dyakon_Frost ©   (2006-04-12 17:04) [7]

Вот модули которые подключаю:
 ShareMem,
 SysUtils,
 StdCtrls,
 Grids,
 Mask,
 ExtCtrls,
 Dialogs,
 Classes


 
Плохиш ©   (2006-04-12 17:04) [8]


> Dyakon_Frost ©   (12.04.06 17:04) [4]
> "Плохиш" - указываю путь к файлу используя OpenDialog1!

Правда?


 
Плохиш ©   (2006-04-12 17:07) [9]

Оригинально, не зависимо от того, что нажал пользователь в диалог, даже если он не выбрал ни какого имени файла, всё-равно выполнить(попытаться выполнить) весь код. Я плякал.


 
Dyakon_Frost ©   (2006-04-12 17:07) [10]

"Fay" - эту процедуру я пишу в dll - и именно в ней возникает ошибка, а если пишу MessageDlg в программе, то все ОК!


 
Плохиш ©   (2006-04-12 17:08) [11]


> Dyakon_Frost ©   (12.04.06 17:04) [7]
> Вот модули которые подключаю:

К стиральной машине подключаешь? Попробуй к электроплите.


 
Dyakon_Frost ©   (2006-04-12 17:08) [12]

"Плохиш" - да суть не в том, это не проблема!


 
vovnuke ©   (2006-04-12 17:09) [13]

1) а вот это

> then
>  OD1.FileName;

зачем?
2) а если не Execute, тогда что?


 
Dyakon_Frost ©   (2006-04-12 17:10) [14]

Какая разница, суть не в том, проблема в MessageDlg!


 
unknown ©   (2006-04-12 17:11) [15]


> Dyakon_Frost ©
>
>  if OD1.Execute then
>  OD1.FileName;

Это что делает, интересно?
И где проверка валидности файла?


 
unknown ©   (2006-04-12 17:12) [16]


> Dyakon_Frost ©   (12.04.06 17:10) [14]
> Какая разница, суть не в том, проблема в MessageDlg!

Нет, не в MessageDlg.


 
vovnuke ©   (2006-04-12 17:13) [17]

думаю дело в Screen-е


 
Dyakon_Frost ©   (2006-04-12 17:14) [18]


> Нет, не в MessageDlg.

Тогда в чем?


 
unknown ©   (2006-04-12 17:16) [19]


> Dyakon_Frost ©   (12.04.06 17:14) [18]
> > Нет, не в MessageDlg.
> Тогда в чем?


Скорее всего в этом:
AssignFile(f,OD1.FileName);
Reset(f);
for i := 1 to 5 do
for j := 1 to 5 do
read(f,b[i,j]);

Отладчиком пройтись не судьба?


 
Плохиш ©   (2006-04-12 17:17) [20]

Можно конечно спросить о используемых неизвестных переменных, да и о ошибке можно было бы спросить, только зачем? Совершенно не интересно.


 
Dyakon_Frost ©   (2006-04-12 17:17) [21]

Он даже и невключится так как пишет что ошибка в
if MessageDlg("asdasd",mtConfirmation,[mbYes,mbNo],0) = mrYes then


 
Dyakon_Frost ©   (2006-04-12 17:28) [22]

Ладно народ придеться разбираться самому!


 
Dyakon_Frost ©   (2006-04-12 17:42) [23]

Как всегда все эллементарно: надо подключить модуль Controls.
И сразу всем совет: "Не создавайте себе и другим проблем помелочам."
Это почти ко всем присутствующим относится!

Спасибо!


 
Плохиш ©   (2006-04-12 18:01) [24]

http://ln.com.ua/~openxs/articles/smart-questions-ru.html


 
Leonid Troyanovsky ©   (2006-04-12 21:52) [25]


> Плохиш ©   (12.04.06 18:01) [24]

> http://ln.com.ua/~openxs/articles/smart-questions-ru.html


Зашибись.
А как тут нах посылают?

--
Regards, LVT.


 
Германн ©   (2006-04-13 03:21) [26]


> Зашибись.
> А как тут нах посылают?

По разному. Как кому захочется.
А Вы собс-но об чём, Леонид?


 
Amoeba ©   (2006-04-13 09:38) [27]


> Зашибись.
> А как тут нах посылают?

Если надо кого либо туда послать, то посылай сюда: http://lleo.aha.ru/na/



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

Форум: "Начинающим";
Текущий архив: 2006.04.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.011 c
15-1144337624
Winston [BGMD]
2006-04-06 19:33
2006.04.30
Экспорт в dll


2-1145016343
Ezorcist
2006-04-14 16:05
2006.04.30
Как узнать аськи-код символа?


1-1143126816
voha
2006-03-23 18:13
2006.04.30
PReport & Delphi 2006


3-1141984711
кораблик
2006-03-10 12:58
2006.04.30
Подкинте идею


2-1144998437
nastyok::
2006-04-14 11:07
2006.04.30
Table1.FindKey





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский