Set callback Function to Multiple Blocks

4 visualizaciones (últimos 30 días)
Daiana Tudose
Daiana Tudose el 23 de Ag. de 2019
Respondida: Suman el 19 de Jun. de 2025
Hello !
I want to set the same callback OpenFcn function to multiple Subsytem blocks, but I can figure it out how. Can you help me please ?
Thank you so much!

Respuestas (1)

Suman
Suman el 19 de Jun. de 2025
You can programmatically assign the same "OpenFcn" callback to multiple Subsystem blocks in Simulink using a MATLAB script.
  1. Create a string containing all the code for the callback.
  2. Find all the subsytem blocks.
  3. Use set_param to set the callback function.
For example:
callbackLines = {
'disp(''You opened this subsystem'');'
'x = 42;'
'y = x * 2;'
'fprintf(''Computed value: %d\n'', y);'
};
callbackStr = strjoin(callbackLines, '\n');
subsystems = find_system(gcs, 'BlockType', 'SubSystem');
for i = 1:length(subsystems)
set_param(subsystems{i}, 'OpenFcn', callbackStr);
end
Hope this helps!

Categorías

Más información sobre Subsystems en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by