線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1412
推到 Plurk!
推到 Facebook!

關於載入圖型錯誤

答題得分者是:Justmade
ROLAND168
一般會員


發表:39
回覆:49
積分:17
註冊:2003-02-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-01 10:29:12 IP:61.229.xxx.xxx 未訂閱
請教各位 : 我的 Image.loadfromfile 此行都會出現如下錯誤?? 'BitMap image is not valid' 不知為何如此?? 但我確定圖是 ok 的!!請教各位!!
ha0009
版主


發表:16
回覆:507
積分:639
註冊:2002-03-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-01 10:37:30 IP:61.30.xxx.xxx 未訂閱
你好: 這是圖形格式不符的錯誤,你使用的圖檔格式為何?Delphi 有支援的圖檔有 .bmp .ico .WMF 等,如果要使用 .jpg 則需要 uses jpeg 單元。你試試看唄
ROLAND168
一般會員


發表:39
回覆:49
積分:17
註冊:2003-02-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-01 10:45:09 IP:61.229.xxx.xxx 未訂閱
引言: 你好: 這是圖形格式不符的錯誤,你使用的圖檔格式為何?Delphi 有支援的圖檔有 .bmp .ico .WMF 等,如果要使用 .jpg 則需要 uses jpeg 單元。你試試看唄 < face="Verdana, Arial, Helvetica"> 謝謝您!!我不懂 jpeg 有此單元嗎 delphi 5 ??
qoo1234
版主


發表:256
回覆:1167
積分:659
註冊:2003-02-24

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-07-01 12:10:04 IP:61.217.xxx.xxx 未訂閱
引言: 我不懂 jpeg 有此單元嗎 delphi 5 ??
delphi 5有Jpeg單元... 參考範例:
     unit Unit1;    interface    uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, ExtDlgs, StdCtrls, ExtCtrls;    type
  TForm1 = class(TForm)
    Image1: TImage;
    Button1: TButton;
    OpenPictureDialog1: TOpenPictureDialog;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;    var
  Form1: TForm1;    implementation
   uses jpeg;
{$R *.dfm}    //載入圖檔
procedure TForm1.Button1Click(Sender: TObject);
begin
  if OpenPictureDialog1.Execute then
  Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
end;    end.    
網海無涯,學無止境!
ROLAND168
一般會員


發表:39
回覆:49
積分:17
註冊:2003-02-26

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-07-01 12:47:30 IP:61.229.xxx.xxx 未訂閱
引言:
引言: 我不懂 jpeg 有此單元嗎 delphi 5 ??
delphi 5有Jpeg單元... 參考範例:
     unit Unit1;    interface    uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, ExtDlgs, StdCtrls, ExtCtrls;    type
  TForm1 = class(TForm)
    Image1: TImage;
    Button1: TButton;
    OpenPictureDialog1: TOpenPictureDialog;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;    var
  Form1: TForm1;    implementation
   uses jpeg;
{$R *.dfm}    //載入圖檔
procedure TForm1.Button1Click(Sender: TObject);
begin
  if OpenPictureDialog1.Execute then
  Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
end;    end.    
網海無涯,學無止境!
 uses jpeg;     ..
...
....
......    procedure TFBAS_Inventory.bbUploadClick(Sender: TObject);
begin
  inherited;
  if OpenPictureDialog1.Execute then
  begin
    with dmBAS_Inventory do
    begin
      if dtInvimage.Eof then
         dtInvimage.append
      else
        dtInvimage.edit;
      dtInvimageIMAGE.LoadFromFile  (OpenPictureDialog1.FileName); // 此行還是掛了
      dtInvimage.Post;
    end;
  end;
end;
qoo1234
版主


發表:256
回覆:1167
積分:659
註冊:2003-02-24

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-07-01 12:57:00 IP:61.217.xxx.xxx 未訂閱
引言: uses jpeg; .. ... .... ...... procedure TFBAS_Inventory.bbUploadClick(Sender: TObject); begin inherited; if OpenPictureDialog1.Execute then begin with dmBAS_Inventory do begin if dtInvimage.Eof then dtInvimage.append else dtInvimage.edit; dtInvimageIMAGE.LoadFromFile (OpenPictureDialog1.FileName); // 此行還是掛了 dtInvimage.Post; end; end; end;
dtInvimageIMAGE 是繼承何種元件 dtInvimageIMAGE.LoadFromFile <---寫法怪怪的喔~ < src="http://delphi.ktop.com.tw/download/upload\33223_qoo.gif">網海無涯,學無止境!
Justmade
版主


發表:94
回覆:1934
積分:2030
註冊:2003-03-12

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-07-01 13:00:06 IP:218.16.xxx.xxx 未訂閱
這應是你的數據庫不直接支援你要 load 的檔案格式。 你可以參考 : 在數據庫以jpeg儲存經規格化的 bmp/jpg 圖片實作示範 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=27715 可以用 BLOB Field 以 Jpeg 格式來儲存 BMP/JPG 的檔案, 今天才重新試試在 MySQL 做也操作無誤 : http://delphi.ktop.com.tw/topic.php?TOPIC_ID=33237
ha0009
版主


發表:16
回覆:507
積分:639
註冊:2002-03-16

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-07-01 13:08:37 IP:61.30.xxx.xxx 未訂閱
你好: 看你的元件似乎與資料庫有關,如果是資料庫要存取的話,你試試下面的方式。
var
   j : TJPEGImage;
begin
   j := TJPEGImage.Create;
   j.LoadFromFile (jpgPath);
   dtInvimage.edit;
   tInvimageIMAGE.Picture := j;                
   dtInvimage.Post;
   FreeAndNil (j);
end;
danny
版主


發表:100
回覆:522
積分:595
註冊:2002-03-11

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-07-01 13:28:24 IP:211.76.xxx.xxx 未訂閱
引言:
..
...
....
......    procedure TFBAS_Inventory.bbUploadClick(Sender: TObject);
begin
  inherited;
  if OpenPictureDialog1.Execute then
  begin
    with dmBAS_Inventory do
    begin
      if dtInvimage.Eof then
         dtInvimage.append
      else
        dtInvimage.edit;
      dtInvimageIMAGE.LoadFromFile  (OpenPictureDialog1.FileName); // 此行還是掛了
      dtInvimage.Post;
    end;
  end;
end;
您這原因是 dtInvimageIMAGE 元件不支援您給的檔案格式, 就像 DBImage 不支援 JPEG 一樣(就算 uses JPEG 也一樣) 圖檔格式和Database無關(除非他會自動轉碼), 就算您自行存入 Database 中, 元件不支援顯示時也會錯誤...
------
將問題盡快結案也是一種禮貌!
ROLAND168
一般會員


發表:39
回覆:49
積分:17
註冊:2003-02-26

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-07-01 13:35:09 IP:61.229.xxx.xxx 未訂閱
引言: dtInvimageIMAGE 是繼承何種元件 dtInvimageIMAGE.LoadFromFile <---寫法怪怪的喔~ < face="Verdana, Arial, Helvetica"> dtInvomageImage -> 是 TBlobField 非常感謝各位的教導!!
系統時間:2024-11-23 5:45:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!