2017-12-28 2 views
-2

Ich möchte einige Aktionen ausführen, wenn ich auf Bild in Openframeworks (C++) klicke. Wie macht man das?Ich möchte einige Aktionen ausführen, wenn ich in Openframeworks (C++) auf ein Bild klicke. Wie macht man das?

Ich verwende ofImage. Hilf mir, das zu lösen.

+1

Hart eine Frage zu beantworten, wie bestimmte Aktionen auszuführen wenn die auszuführenden Aktionen nicht angegeben wurden. Aber das Hinzufügen der Aktionen wird wahrscheinlich nicht ausreichen. Es ist am besten, wenn Sie versuchen, Ihre Ziele zu erreichen, und dann mit spezifischen Fragen zu Problemen, auf die Sie stoßen, zurückzukehren. – user4581301

Antwort

0

Wenn Sie das Bild in draw() rendern, können Sie eine Position (x,y) und die Größe (width,height) auf dem Bildschirm anzeigen.

Sie können die gleichen Positions- und Bemaßungswerte im mouseReleased()-Ereignis verwenden, um zu überprüfen, ob sich die Mauskoordinaten (x,y) innerhalb der Begrenzungsbox des gerenderten Bilds befinden.

Hier aa Stück Code, um dies zu verdeutlichen, vorausgesetzt, Sie haben bereits die x-gerenderten Bild, y, Breite, Höhe Variablen deklariert und aktualisiert:

void ofApp::mouseReleased(int x, int y, int button){ 
    if((x >= imageX && x <= imageX + imageWidth) && 
     (y >= imageY && y <= imageY + imageHeight)){ 
     std::cout << "image clicked" << std::endl; 
    } 

} 
Verwandte Themen