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

Вниз

Интересный глюк   Найти похожие ветки 

 
Nic ©   (2005-12-27 08:17) [0]

Ставим TOpenPictureDialog, при нажатии кнопки:

 if OpenDialog1.Execute then
 begin
   //
 end;


Всё замечательно, но когда в диалоге просто выделяется ярлык (папки или файла) вылетает ошибка. Такого с TOpenDialog не происходит. Никто с этим не сталкивался?


 
DelphiN! ©   (2005-12-27 08:27) [1]

Не думаю что компонент виноват


 
Nic ©   (2005-12-27 08:41) [2]

Сообщение выдаёт следующее, что неизвестный формат картинки .lnk. Причём вылект происходит уже при выделении ярлыка, то есть, по идее, никаких событий происходить не должно.


 
Nic ©   (2005-12-27 08:45) [3]

Вот код всей программы:

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
 ExtCtrls, StdCtrls, ExtDlgs;

type
 TForm1 = class(TForm)
   OpenPictureDialog1: TOpenPictureDialog;
   Button1: TButton;
   Image1: TImage;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
 if OpenPictureDialog1.Execute then
 begin
   //
 end;
end;

end.


Попробуйте сами, может это у меня глючит что-то или радиус кривизны рук зашкаливает все приличные рамки :( В открывшемся диалоге попробуйте открыть ярлык папки...


 
vrem   (2005-12-27 08:51) [4]

*.ico отображаются и не вылетает. D7.0 4.453


 
Nic ©   (2005-12-27 08:55) [5]

Нет, не ico, а lnk (ярлыки)


 
Nic ©   (2005-12-27 08:58) [6]

Именно ярлык любой папки. :(


 
vrem   (2005-12-27 09:03) [7]

В разрешённых форматах(снизу в диалоге) нету lnk, может поэтому -

Project xxxx raised exception class EinvalidGraphic with message Unknown picture file extension (.lnk)

Process stopped.  Use Step or Run to continue.


 
Nic ©   (2005-12-27 09:10) [8]

Может быть поэтому.  А как такую бяку обойти?


 
Nic ©   (2005-12-27 09:15) [9]

В принципе, поставил TOpenDialog и всё нормально. Но В TPictureDialog имеется preview :) Да и просто очень интересно, как обойти такой глюк. Можно, конечно, написать свой диалог открытия картинок, не используя стандартное, но думаю, что это сильно утяжелит программу.


 
ЮЮ ©   (2005-12-27 09:19) [10]

Delphi какая? D6 (W2K) subj-а не наблюдается


 
Nic ©   (2005-12-27 09:21) [11]

WinXP
D5
D7


 
Desdechado ©   (2005-12-27 10:54) [12]

линк, по идее, должен разыменовываться, т.е. показывать картинку, на которую ссылается
может, она просто не существует?


 
Sash ©   (2005-12-27 11:03) [13]

есть такая неприятность
может в фильтр поставить?


 
Gero ©   (2005-12-27 11:10) [14]

Это только при отладке.


 
Nic ©   (2005-12-27 20:52) [15]

При компиляции из среды?


 
Anatoly Podgoretsky ©   (2005-12-27 21:25) [16]

Nic ©   (27.12.05 20:52) [15]
Чего?


 
Nic ©   (2005-12-27 22:35) [17]


> Anatoly Podgoretsky ©   (27.12.05 21:25) [16]

Невнятно переспросил:


> Gero ©   (27.12.05 11:10) [14]
> Это только при отладке.


Хотел спросить: "При запуске программы мз среды?"


 
Кефир87 ©   (2005-12-27 22:41) [18]

ИМХО это просто этот дилог пытается у себя справа нарисовать пред.просмотр. А lnk естственно не то что он может отоброзить. А винд почему-то не прячет ярлыки, даже если в фильтре нет *.lnk. Короче компонент виноват и не надо его использовать 8)


 
Gero ©   (2005-12-27 22:58) [19]


> Хотел спросить: "При запуске программы мз среды?"

Да. Хотя я могу ошибаться, возможно, с чем-то перепутал, проверить возможности нет.


 
Nic ©   (2005-12-28 10:09) [20]

Кефир87 ©
Наверное так и есть. Пока обойдусь TOpenDialog, а там - видно будет.


 
Gero ©   (2005-12-28 12:17) [21]


> Nic ©   (28.12.05 10:09)

А что, при запуске exe с диска тоже такую ошибку выдает?


 
Nic ©   (2005-12-28 13:02) [22]


> Gero ©   (28.12.05 12:17) [21]

Проверил. Не выдаёт такой ошибки, когда запускаю exe с диска. Что это за мистика такая? Как-то неспокойно :(


 
Gero ©   (2005-12-28 13:05) [23]


> Что это за мистика такая?

Подозреваю, что эта мистика называется except.


 
Nic ©   (2005-12-28 13:07) [24]

Ага, попробую обработать, но всё равно неясно, почему так выдаёт глюк, а сяк - нет...


 
Gero ©   (2005-12-28 13:15) [25]


> Nic ©   (28.12.05 13:07)

Потому что под отладчиком исключения не гасятся.


 
Nic ©   (2005-12-28 13:20) [26]


> Gero ©   (28.12.05 13:15) [25]

Спасибо большое за разъяснение!



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

Форум: "Потрепаться";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.245 c
4-1131393148
MAXHO
2005-11-07 22:52
2006.01.22
Как поместить все значки из трея на форму?


5-1122625321
Juice
2005-07-29 12:22
2006.01.22
Как отлаживать свои компоненты?


14-1135611667
Fl@sh
2005-12-26 18:41
2006.01.22
Настройки редактора


1-1134722112
scorpio_md
2005-12-16 11:35
2006.01.22
Как закрыть EXCEL без запроса на сохранение


11-1117558230
Zoom
2005-05-31 20:50
2006.01.22
MHFindReplaceDialog





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский