小编Ist*_*har的帖子

无法删除Matlab创建的文件

可能重复:
如何以异常安全的方式处理MATLAB中的资源?(比如"try ... finally")
如何关闭错误后保持打开的文件?

我通过fopen和创建一些文件和目录mkdir,并fclose在完成文件写入后用适当的命令关闭所有打开的流.然而,当我用Ctrl+ 中止计算时,C这些目录/文件以某种方式保留在内存中,我无法删除它们.即使后续close all调用也没有释放它们,我必须退出Matlab来释放这些文件.知道我怎么能反击这种行为(除了'停止使用中止')?

系统是:Win7 64bit,Matlab R2011b.

file-io matlab

3
推荐指数
1
解决办法
2722
查看次数

如何在布尔数组上使用逻辑运算符?

我已经及时搜索了文档和SE,但未能找到解决方案:给定一个任意大的布尔值向量,如何返回给定值的逻辑AND?

我希望有类似的东西:

and([1 1 1])  -->  1
Run Code Online (Sandbox Code Playgroud)

(自从true && true && true给出1).当然,它不是有效的语法.

我的目标是找到比较相同大小的两个二进制向量的最快方法,如果它们相同则返回1,否则返回0.因为and如果在两个向量上使用,则元素方式返回向量,因此标题问题.

arrays matlab logical-operators

3
推荐指数
1
解决办法
2747
查看次数

使用Manipulate和变量依赖的Multipanels

是否可以更改变量的值Manipulate?假设我有一Manipulate两个变量,xy我们显示的值.我想要做的是以这样的方式使它当我改变值时x,y更新为x*x.当我更改值时y,则x更新为平方根y.

另一个问题是,我可以有多个面板Manipulate吗?我想在每个滑块下面都有一个白色面板.

Manipulate[
 Row[{x, y}, "    "],
 Row[{
   Control[{{x, 0, Style["x", "TI", 14]}, 0, 4 , Appearance -> "Labeled"}],
   Control[{{y, 0, Style["y", "TI", 14]}, 0, 16, Appearance -> "Labeled"}]
 }]
] 
Run Code Online (Sandbox Code Playgroud)

例

在上面的情节中,我设置x为3和y9.再次,我想移动y说4并且必须x移动到2.同样,我想移到x4并y移动到16.可能吗?或者我刚遇到鸡肉或鸡蛋问题?

wolfram-mathematica

2
推荐指数
1
解决办法
1372
查看次数

对话操作

我想创建一个对话窗口,用户可以在其中执行各种任务,并希望他通过用鼠标单击取消按钮从对话框返回(即不通过按Enter键).因此我不想使用CreateDialog.但是,通过CreateWindow创建一个不太具体的对话框窗口,所有字符串都显示为未格式化.

expr = Column[{
   Row@{"set variable to: ", InputField["value", String]},
   "Try to hit Enter in any of the dialogs: it closes #2 but not #1.",
   CancelButton[]
   }];

CreateWindow[DialogNotebook[expr], WindowSize -> All, WindowMargins -> {{100, Automatic}, {Automatic, Automatic}}, WindowTitle -> "1. CreateWindow & DialogNotebook"];
CreateDialog[expr, WindowTitle -> "2. CreateDialog"];
Run Code Online (Sandbox Code Playgroud)

对话窗口

是否有任何聪明的方法来获得第二个对话框窗口的外观,但是第一个窗口的按钮行为?当然,expr这是一个简单的例子,但实际上它可能非常复杂,因此没有选择将每个字符串包装Cell[string, "Text"]成一些模糊的盒子形式,并将其他每个表达式包装成一些模糊的盒子形式.

user-interface dialog wolfram-mathematica interface

2
推荐指数
1
解决办法
198
查看次数