テキストボックス(エディットテキスト)に文字列を追加する方法
13 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
koji fukumoto
le 17 Juil 2019
Commenté : koji fukumoto
le 22 Juil 2019
GUIDE でテキストボックスを含む GUI を作成しています。
テキストボックスは、処理内容を1行ずつ出力するというものです(動作ログを出力する)。
テキストボックスに文字列を追加するには、どのようにすればよいのでしょうか?
※プロパティのMaxを2.0にして、複数行対応はできております。
テキストボックスのハンドルのStringに
"「元のString」と「追加したい文字列」を結合した文字列"
をセットする、という考えでいるのですが、
hLog.String = strcat(hLog.String, newline, putData);
だと、改行ができませんでした。
0 commentaires
Réponse acceptée
Kazuya
le 20 Juil 2019
セル配列で複数表示できます。例:
hLog.String = {'One','Two','Three'};
ので、セルを追加で結合するイメージで行けると考えましたが、いかがでしょう?
4 commentaires
Kazuya
le 22 Juil 2019
function putLog(hLog, putData)
% hLog:テキストボックスのハンドル
% putData:出力内容
str = [hLog.String; {putData}];
hLog.String = str;
と , (コンマ)を ; (セミコロン)に変えて縦方向に連結するようにしてみて試していただけますか?
あとすいません、
hLog.String = {};
hLog.String = [tt.String, {'one'}];
hLog.String = [tt.String, {'two'}];
は
hLog.String = {};
hLog.String = [hLog.String, {'one'}];
hLog.String = [hLog.String, {'two'}];
の意味で書きました。
Plus de réponses (1)
koji fukumoto
le 22 Juil 2019
2 commentaires
Kazuya
le 22 Juil 2019
予め hLog.String = cell(1000,1) をしたとしても、その後 hLog.String = str と上書きしてしまうと、hLog.String = cell(1000,1) を実行する意味が無くなります。
hLog.String = cell(1000,1) とセル配列を確保するのであればログを追加する際には
hLog.String(1) = log1 % log1 はセル配列
hLog.String(2) = log2 % log2 はセル配列
hLog.String(3) = log3 % log3 はセル配列
.
.
と事前確保したセル内に順次収めていく必要があります。何番目のログかを認識する必要がある点は手間ですね。
Voir également
Catégories
En savoir plus sur HTTP インターフェイス dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!