發生了scan line index out of range的錯誤!!! |
答題得分者是:taishyang
|
wd7142
一般會員 發表:18 回覆:19 積分:7 註冊:2004-01-13 發送簡訊給我 |
不好意思,想請問一下!!我使用了scanline的指令,在編譯時卻一直出現
scan line index out of range的錯誤,想請問一下為什麼會這樣子,
以下是我的程式碼: Byte* ptr;
Graphics::TBitmap *TheBitmap; TheBitmap=Image1->Picture->Bitmap; for (int y=0; y < TheBitmap->Height; y )
{
ptr = (Byte*)TheBitmap->ScanLine[y];
for (int x=0; x < TheBitmap->Width; x )
ptr[x]=(Byte)(255-ptr[x]);
} Repaint(); 是
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
wd7142您好:
PO程式碼的方式請參考版規
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=46591
煩請修改,謝謝您的配合 針對您的問題,試試將 >
|
wd7142
一般會員 發表:18 回覆:19 積分:7 註冊:2004-01-13 發送簡訊給我 |
引言: wd7142您好: PO程式碼的方式請參考版規 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=46591 煩請修改,謝謝您的配合 針對您的問題,試試將 > >>< face="Verdana, Arial, Helvetica"> 不好意思,我找出來是在滑鼠的部份!!,在還沒載入圖片時所發生的 錯誤,那請問一下該怎麼改呢?if(Image1->Picture->Bitmap->ScanLine[0]); { StatusBar1->Panels->Items[0]->Text= "X=" IntToStr(X); StatusBar1->Panels->Items[1]->Text= "Y=" IntToStr(Y); } |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
您好:
引言: 不好意思,我找出來是在滑鼠的部份!!,在還沒載入圖片時所發生的 錯誤,那請問一下該怎麼改呢? if(Image1->Picture->Bitmap->ScanLine[0]); { StatusBar1->Panels->Items[0]->Text= "X=" IntToStr(X); StatusBar1->Panels->Items[1]->Text= "Y=" IntToStr(Y); }要確定Image1是否有載入圖片可用 if (Image1->Picture->Bitmap->Empty) //..do something(Image1沒圖片)順心 發表人 - |
wd7142
一般會員 發表:18 回覆:19 積分:7 註冊:2004-01-13 發送簡訊給我 |
引言: 您好:引言: 不好意思,我找出來是在滑鼠的部份!!,在還沒載入圖片時所發生的 錯誤,那請問一下該怎麼改呢? if(Image1->Picture->Bitmap->ScanLine[0]); { StatusBar1->Panels->Items[0]->Text= "X=" IntToStr(X); StatusBar1->Panels->Items[1]->Text= "Y=" IntToStr(Y); }要確定Image1是否有載入圖片可用if (Image1->Picture->Bitmap->Empty) //..do something(Image1沒圖片)順心 發表人 - >>< face="Verdana, Arial, Helvetica"> 多謝版大指教,已經ok了!!...真是太感謝你了~~ |
number999
一般會員 發表:0 回覆:3 積分:0 註冊:2004-02-29 發送簡訊給我 |
那請問我的程式碼如下:
void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { Graphics::TBitmap *TheBitmap; TheBitmap=Image1->Picture->Bitmap; if(TheBitmap->ScanLine[0]) { StatusBar1->Panels->Items[0]->Text= "X=" IntToStr(X); StatusBar1->Panels->Items[1]->Text= "Y=" IntToStr(Y); } //------------------------------------------------------------------- switch (mouse_operation) { case Pasting : TheBitmap->Canvas->Draw(0,0,OrgBitmap); X=(int)X*ScaleFactor; Y=(int)Y*ScaleFactor; TheBitmap->Canvas->Draw(X-StartX,Y-StartY,PasteBitmap); TheBitmap->Canvas->Pen->Mode=pmBlack; TheBitmap->Canvas->Pen->Width=2; TheBitmap->Canvas->Brush->Style=bsClear; TheBitmap->Canvas->Rectangle(X-StartX,Y-StartY,X-StartX PasteBitmap->Width,Y-StartY PasteBitmap->Height); break; case Drawing : TheBitmap->Canvas->Draw(0,0,OrgBitmap); X=(int)X*ScaleFactor; Y=(int)Y*ScaleFactor; TheBitmap->Canvas->Pen->Mode=pmCopy; TheBitmap->Canvas->Pen->Style=Pen_Style; TheBitmap->Canvas->Pen->Width=Pen_Width; TheBitmap->Canvas->Pen->Color=Pen_Color; switch (mouse_mode) { case Line_Enable: TheBitmap->Canvas->MoveTo(StartX,StartY); TheBitmap->Canvas->LineTo(X,Y); break; case Rect_Enable: TheBitmap->Canvas->Brush->Style=bsClear; TheBitmap->Canvas->Rectangle(StartX,StartY,X,Y); break; case Ellipse_Enable: TheBitmap->Canvas->Brush->Style=bsClear; TheBitmap->Canvas->Ellipse(StartX,StartY,X,Y); } break; case Masking : TheBitmap->Canvas->Pen->Mode=pmBlack; TheBitmap->Canvas->Pen->Width=2; TheBitmap->Canvas->Brush->Style=bsClear; TheBitmap->Canvas->Draw(0,0,OrgBitmap); X=(int)X*ScaleFactor; Y=(int)Y*ScaleFactor; TheBitmap->Canvas->Rectangle(StartX,StartY,X,Y); break; } }同樣也會有"scan line index out of range"的錯誤 我試著照taishyang大大將 if(TheBitmap->ScanLine[0]) 改成 if (TheBitmap->Empty) //..do something(Image1沒圖片) 還是一樣的問題 不好意思可否為我解答一下 麻煩了!!! ps.想了好久 @@ |
seeing
初階會員 發表:49 回覆:131 積分:41 註冊:2002-11-07 發送簡訊給我 |
引言: 同樣也會有"scan line index out of range"的錯誤 我試著照taishyang大大將 if(TheBitmap->ScanLine[0]) 改成 if (TheBitmap->Empty) //..do something(Image1沒圖片) 還是一樣的問題 不好意思可否為我解答一下 麻煩了!!! ps.想了好久 @@您好,如果改成跟taishyang版主說的一模一樣應該就不會有問題了 if (Image1->Picture->Bitmap->Empty) |
number999
一般會員 發表:0 回覆:3 積分:0 註冊:2004-02-29 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |