推 cross0619:嗯嗯 感謝 04/05 21:37
※ 引述《cross0619 ()》之銘言:
: 小弟想問說
: 有關於picturebox的pictureBox.Location.X 在開發工具(Visual Studio)上頭的小視窗
: 是顯示int Point.X
: 那為什麼 pictureBox.Location.X = pictureBox.Location.X + 3;
: 這樣寫會出錯呢
: 錯誤訊息是
: 'System.Windows.Forms.Control.Location' 的傳回值,因為不是變數型別
: 而且不只座標 還有大小(Size)也是一樣的情況
: 那如果這樣是錯誤的做法 請問正確的做法是怎樣呢??
: 小弟在此先謝過
Location有出現在屬性視窗裡 所以算是一種property
在Control類別裡 程式碼應該是這樣寫的
public Point Location
{
get{ return xxx; }
set{ xxx = value; }
}
這樣應該是只可以讀取或寫入Point物件
好像不行直接去改物件的X值
如果在Control類別程式是寫public Point Location;
那這就是變數型別(不會出現在屬性視窗裡)
所以正確寫法是 xxx.Location = new Point(xxx.Location.X+3,xxx.Location.Y);
不然就是 xxx.Left += 3;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.205.28