2026.1.16随笔:实习第二十天(终于一个月了~)

今天mt上来就说我写的模块还有bug,

mt原话:

@汪钦 这里保存的时候好像还有点问题,我这个模块其实是只有一个窗口的,但是写入的Json文件里有三个,我操作的流程是先创建一个包含三个窗口的模块,然后再创建另一个项目,第二个项目只做了结果查看,然后重新打开第二个的时候,就弹出了这些

你复现出来这个了吗,我这好像又没问题了

mt说的先创建一个项目,打开三个窗口,之后再创建一个项目打开结果查看(这里第二个项目本来应该是打不开网格数据的,第二个项目只有声压数据,没有网格数据,因为第一个项目的网格数据没有删掉,创建第二个项目的时候数据还是在内存里面,这是个Bug)之后重新打开第二个项目会出现mt说的那种情况是因为这里

之前是因为没有对widget做判断,所以无论创建成功或者失败,只要点击了按钮就会添加到OpenedTab,现在改一下

这里应该是“请先导入网格”而不是“导出网格”我们应该站在用户使用软件的那一方来看待


后面如果支持删除窗口,用户删除窗口的时候openedTabs里面的对应字段应该也会被删除,然后就会出现只有最后一个窗口的情况,之后再次打开这个项目的时候就会出现这个问题:这里会拦截,导致我看不到这个窗口,你这块类似的数据校验应该是点按钮的时候需要处理的,如果是正常打开,不需要这个逻辑

  1. 显示窗口:因为网格数据都是存在内存里面的,用户再次打开项目的时候,没有网格数据,但是网格数据都在磁盘上,可以在这里添加一个读取当前目录下的网格数据的操作
  2. 不显示:可以在这里添加一个判断,或者直接不用改

最后mt和我选择了不改

mt原话:

这个视图切换渲染模式的时候,你看怎么好改,要么就是跟着下拉框走,切换Mode的时候,同步到下拉框的模式,要么就是切换Mode的时候,那个渲染模式根据当前模型走,是两套东西

你同步一下那个下拉框吧,模式没切换过来

那你看看这块,还有打开的时候,那个网格视图那里,其实是不能切换到另一个Model的,你看看咋回事,没限制上的样子

现在就是跟着当前模型走,这两个窗口实际上是CFDApplicationUnStructGridWidget创建的两个不同的实例,所以他们是独立的

而且我这里没有出现mt说的情况,一切正常~

最后我添加了一个禁用下拉框Static Grid的函数就OK了

最后回归到了下拉框不显示的问题上

下午回学校了,准备期末考试


这个周末发工资!不知道第一个月会有多少钱呢!嘿嘿嘿~~