update box with TextAeaValuechanged callback don't run
显示 更早的评论
hi, when i change text in this area nothing happens
Am I doing something wrong or should I select Add ValueChangingFcn callback?

采纳的回答
It looks like you have already defined a callback function for when the value of the text area is changed. Have you added any code to it? Without seeng the code in the callback function, as well as knowing what it is you expect to happen, it's really difficult to provide specific feedback.
15 个评论
see that example
i load file in a folder but the callback don't run
i don't see 'i'm here' in my example
It's doing exactly what you've programmed it to do. fprintf writes to the command window, not the text area.

yes this i know but in my commando area i don't see anything


Hm. It works in R2023a. What version of MATLAB are you using?
>> version
ans =
'9.14.0.2254940 (R2023a) Update 2'
I made no changes to your app. Here is a gif in R2023a in Windows 11.

I don't understand why it doesn't work for me...I use window10 though
Are you using the exact same script you attached to this thread?
i have seen it update me after i move the cursor from the box to another part of the app.
Shouldn't it invoke the callback when I type into it?
No. The 'valueChanged' callback will not execute until you are done, interpretted as changing focus away from the TextArea.
If you want your callback to execute as you are making changes, you need to use the 'valueChangingFcn' callback instead.
in my example the box was non-editable and I changed it via code (by pressing the button) Then moving to another part of the gui he didn't write to me

When you change the text programmatically, the callback function is not run.
ok thanks then problem solved
If you want the callback to execute when you are changing the value programmatically, you just need to call that function inside the callback function that is executing.
% Button pushed function: Button
function ButtonPushed(app, event)
[file,path] = uiputfile ({'*.*'}, 'Select a file');
[~,name,~] = fileparts(file);
app.TextArea.Value=name;
TextAreaValueChanged(app, app.TextArea)
end
yes, in fact I have already done this
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 App Building 的更多信息
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
