2011-08-23 229 views
0

我是Java初學者,我試圖編寫代碼。目前我在getPixelColor()中被禁用。這是類Robot的方法。我可以獲得像素顏色,但不知道如何與其他顏色進行比較。假設我的其他顏色存儲在某個int變量中,我需要比較這兩種顏色。但我無法比較這兩種顏色,因爲它會引發此錯誤「無法比擬的類型:int和java.awt.Color」。那麼如何將其轉換爲int?Java - 獲取像素顏色

感謝

回答

2

大概是這樣的:

if(color.getRGB() == stored_color){ 
} 

不管怎麼說,你需要訪問顏色對象的getRGB功能將數值與另一個int進行比較。

+0

雖然兩個答案(現在發佈)將工作,這對記憶和速度更好。 +1。 – gnomed

+0

所以這樣的事情? int stored_color = 16777215; if(stored_color == robot.getPixelColor(300,300).getRGB()){}它不會拋出任何錯誤,但它不匹配它應該匹配的顏色。 – roman

+0

好的,我知道了,它的工作原理:)我不知道它在dec_color = 256返回顏色^ 3-dec_color – roman

2

嘗試

Color otherColor = new Color(someInt); 

然後

if (otherColor.equals(robot.getPixelColor(someX, someY)) 
{ 
    ... 
} 
+0

謝謝,這個作品 – roman