Cannot find function figure1_KeyPressFcn in GUI code file

2 visualizaciones (últimos 30 días)
Stephen
Stephen el 9 de Ag. de 2017
Respondida: Kai Tanaka el 1 de Ag. de 2019
In the GUIDE editor, when I right click on the figure and go to add a callback, pressing the KeyPressFcn callback selection yields a msgbox error which says "Cannot find function figure1_KeyPressFcn in GUI code file C:". Note that there is no path given after "C:". When a keypress event occurs during runtime, there is an error printed to console which states "error using feval ... undefined function 'figure1_KeyPressFcn' ..."
How should I go about fixing this error?
  3 comentarios
Stephen
Stephen el 19 de En. de 2018
Richard, no, I never did figure out how to fix this. I ended up re-creating the GUI from scratch in guide and then copying in the relevant code. I think it happened originally because I copied a .fig file I'd edited in parallel with the code (trying to sync the UI changes with the latest code file by just replacing the .fig file). But no easy answer, I think it's just corrupted file(s)
Richard Moyse Fenning
Richard Moyse Fenning el 19 de En. de 2018
Thanks Stephen.
Following an answer to a different question, I did 'save as' on the fig and it seems to work OK now. I'm not 100% sure the two are related though :)

Iniciar sesión para comentar.

Respuestas (1)

Kai Tanaka
Kai Tanaka el 1 de Ag. de 2019
I also ran into this issue and was able to find a way to resolve it. It appears the error can be caused by creating the callback code and then deleting it. In order to get GUIDE to regenerate the code:
  1. Rename the 'Tag' of the offending GUI element inside Inspector
  2. Save the GUI
  3. Right click the element in the figure, and select 'view callbacks'
The code was now generated in my GUI .m file and the error went away.

Categorías

Más información sobre Interactive Control and Callbacks en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by