NaN when I type "known" variables (like pi, etc) in an editable uitable
2 ビュー (過去 30 日間)
古いコメントを表示
Hi,
I have an uitable with 2 columns and its ColumnFormat are char and numeric; the numeric column is editable.
When I type pi or pi/2 it returns 'NaN' where I type.
Matlab Help suggests to use CellEditCallback command, but I don't understand how I shoud use it and how can it solves my problem.
Thanks
0 件のコメント
採用された回答
Jan
2013 年 1 月 21 日
"Numeric" means numeric, such as 1.23 or -1e-16, while pi/2 has to be interpreted. The CellEditcallback (you can use this term to let Google find more details for you) can call eval() to evaulate this expression. But then a small test would be fine to control that no mad user tries to input '!format C:', because even this command would be evaulated (of course not successfully, but I do not post dangerous commands here). A minimal test is to exclude all strings, which contain '!', 'dos' and 'system', but even the local variables of the CellEditCallback function can be overwritten, 'error' let the program stop, 'quit' closes Matlab etc.
Perhaps converting the string to a sym expression at first is more secure.
その他の回答 (1 件)
Azzi Abdelmalek
2013 年 1 月 21 日
If you want to type pi/2, then make your column format char
4 件のコメント
参考
カテゴリ
Help Center および File Exchange で Dialog Boxes についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!