我是Java初學者,我試圖編寫代碼。目前我在getPixelColor()中被禁用。這是類Robot的方法。我可以獲得像素顏色,但不知道如何與其他顏色進行比較。假設我的其他顏色存儲在某個int變量中,我需要比較這兩種顏色。但我無法比較這兩種顏色,因爲它會引發此錯誤「無法比擬的類型:int和java.awt.Color」。那麼如何將其轉換爲int?Java - 獲取像素顏色
感謝
我是Java初學者,我試圖編寫代碼。目前我在getPixelColor()中被禁用。這是類Robot的方法。我可以獲得像素顏色,但不知道如何與其他顏色進行比較。假設我的其他顏色存儲在某個int變量中,我需要比較這兩種顏色。但我無法比較這兩種顏色,因爲它會引發此錯誤「無法比擬的類型:int和java.awt.Color」。那麼如何將其轉換爲int?Java - 獲取像素顏色
感謝
大概是這樣的:
if(color.getRGB() == stored_color){
}
不管怎麼說,你需要訪問顏色對象的getRGB功能將數值與另一個int進行比較。
嘗試
Color otherColor = new Color(someInt);
然後
if (otherColor.equals(robot.getPixelColor(someX, someY))
{
...
}
謝謝,這個作品 – roman
雖然兩個答案(現在發佈)將工作,這對記憶和速度更好。 +1。 – gnomed
所以這樣的事情? int stored_color = 16777215; if(stored_color == robot.getPixelColor(300,300).getRGB()){}它不會拋出任何錯誤,但它不匹配它應該匹配的顏色。 – roman
好的,我知道了,它的工作原理:)我不知道它在dec_color = 256返回顏色^ 3-dec_color – roman