Creating a counter loop in MatLab, GUI?
15 ビュー (過去 30 日間)
古いコメントを表示
Hello, i'm trying to create a loop counter that will add increments of 1 every time I click a pushbutton. I don't really have any code as of yet since i'm new to programming but i've figured how to detect the button being pushed, and display a number in the static text. It keeps displaying '1', how do I display 1,2,3,.....n for every push? Here is what I have so far. Thanks a bunch
a = 0;
if (handles.pushbutton5)
a = a + 1;
set(handles.text8,'string',a);
end;
3 件のコメント
Jan
2013 年 1 月 29 日
@Azzi: As Walter has explained before when I've asked the same question, the "if true, ..., end" appears, when you hit the "code" button when no text is selected.
Wouter
2013 年 11 月 7 日
And what if I want the option to count backwards?
I've tried creating a second pushbutton that produces:
counter = get(hObject, 'UserData') - 1;
However, no effect.
採用された回答
Jan
2013 年 1 月 29 日
I would avoid mixing the string and the numerical representation, although both are equivalent in this case. So you can add in the opening function:
set(handles.pushbutton5, 'UserData', 0);
and in the callback of this pushbutton:
function pushbutton5_Callback(hObject, EventData, handles)
counter = get(hObject, 'UserData') + 1;
set(hObject, 'UserData', counter);
set(handles.text8, 'String', sprintf('%d', counter));
4 件のコメント
その他の回答 (3 件)
Azzi Abdelmalek
2013 年 1 月 25 日
set(handles.text8,'string',num2str(a));
5 件のコメント
Azzi Abdelmalek
2013 年 1 月 25 日
In opening function initialize
Set(handles.text8,'string','0')
Amed
2013 年 1 月 25 日
編集済み: Amed
2013 年 1 月 25 日
1 件のコメント
Azzi Abdelmalek
2013 年 1 月 29 日
編集済み: Azzi Abdelmalek
2013 年 1 月 29 日
The initialization is not in the right place. You should do it in your opening function, not in your pushbutton function
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!