WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Problem mit Hittest und ImageHandles

 

TomTom85
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 18.01.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.01.2013, 18:57     Titel: Problem mit Hittest und ImageHandles
  Antworten mit Zitat      
Hallo zusammen,

bitte entschuldigt die Anfängerfrage, aber irgendwie hilft mir die Suche und Google momentan nicht wirklich weiter. Irgendwie habe ich noch Probleme mit dem Matlab-Handle Konzept:

Ich versuche eine uint8-Matrix als Bild in einer Axes auszugeben. Die Axes soll dabei als CallBack die ButtonDownFcn benutzen. Damit nach der Anzeige des Bildes in der Axes das ButtonDownFcn weiter funktioniert, muss man ja die Property HitTest des Imagehandles auf Off setzen. Soweit hat Google mir weiter geholfen, aber irgendwie klappt es nicht:

Code:

        myImageHandle = imshow(myImage,[]);
        set(myImageHandle ,'HitTest','off');
 


Die ButtonDownFcn-Methode wird trotzdem nicht mehr ausgeführt, wenn ich in der GUI dann auf das Bild klicke.

Ich wäre echt super dankbar, wenn ihr mir das kurz erläutern könnt, oder einen Link parat habt, der erklärt, was ich falsch mache.

Beste Grüße,
Tom
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 19.01.2013, 14:35     Titel: Re: Problem mit Hittest und ImageHandles
  Antworten mit Zitat      
Hallo Tom,

Ja, das ist eine tückische Eigenschaft, über die auch Matlab-Fortgeschrittene immer wieder stolpern: IMSHOW ist eine "high-level"-Funktion und deshalb werden genau wie bei den anderen "high-level"-Zeichen-Funktionen die Eigenschaften der AXES zurückgesetzt.
Um dies zu verhindern hilft entweder "hold on", oder explizit das Resetten ausschalten:
Code:
axes('NextPlot', 'add')

statt des Defaults 'replace'.

Eine entsprechende "low-level" Funktion wäre IMAGE.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
TomTom85
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 18.01.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.01.2013, 17:56     Titel:
  Antworten mit Zitat      
Hi Jan,

Danke für deine Hilfe, durch die ich es jetzt hinbekommen habe. Smile

Gruß Tom
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.