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

關於點座標的結構體怎麼寫?

答題得分者是:Windyboy
raintree777
一般會員


發表:11
回覆:7
積分:3
註冊:2004-07-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-07 03:07:05 IP:61.64.xxx.xxx 未訂閱
麻煩大大幫我 :    原碼:    //--------------------------------------------------------------------    #include  #pragma hdrstop #include "Unit1.h" //-------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //-------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //-------------------------------------------------------------------- void __fastcall TForm1::GetCurSor1Click(TObject *Sender) { GetCursorPos(&P); } //-------------------------------------------------------------------- 他的.h檔 : //-------------------------------------------------------------------- #ifndef Unit1H #define Unit1H //-------------------------------------------------------------------- #include #include #include #include <Forms.hpp> #include //-------------------------------------------------------------------- class TForm1 : public TForm { __published: // IDE-managed Components TMainMenu *MainMenu1; TMenuItem *CURSOR1; TMenuItem *GetCurSor1; void __fastcall GetCurSor1Click(TObject *Sender); private: // User declarations public: // User declarations struct pt { int x,y; }P; __fastcall TForm1(TComponent* Owner); }; //-------------------------------------------------------------------- extern PACKAGE TForm1 *Form1; //-------------------------------------------------------------------- #endif 顯示錯誤為 : [C Error] Unit1.cpp(20): E2034 Cannot convert 'TForm1::pt *' to 'tagPOINT *' [C Error] Unit1.cpp(20): E2342 Type mismatch in parameter 'lpPoint' (wanted 'tagPOINT *', got 'TForm1::pt *') 請問這是怎麼一回是阿?? 我試好久.我的觀念是正確滴呀>.<"
Windyboy
版主


發表:7
回覆:119
積分:210
註冊:2002-11-07

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-07 07:58:05 IP:219.84.xxx.xxx 未訂閱
Hi raintree777:    GetCursorPos的函式原型如下,    
extern PACKAGE void __fastcall GetCursorPos(Types::TPoint &P);
傳入的是一個TPoint的struct 但你傳入的是自定的struct pt 所以才會出現Error
struct pt
{
  int x,y;
}P;
改成
TPoint P;
就可以了。 如果你是要自定struct pt的話, 就不能用GetCursorPos這個Func, 要使用你自己寫的Func再傳入struct pt. ^____^ -------------------------- ~天下本無事 庸人自擾之~
raintree777
一般會員


發表:11
回覆:7
積分:3
註冊:2004-07-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-10-07 11:41:05 IP:61.62.xxx.xxx 未訂閱
又學了一課了^^..謝謝哩~~ ((原來學習中的幫助也是有喜悅帶點小成就感=.="))
系統時間:2024-06-28 8:15:22
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!