小编Ist*_*era的帖子

Odoo10/Odoo11动态进度条 - 在python中触发javascript函数

我的任务:odoo中的动态进度条.

我正在使用Odoo小部件:'progressbar'.我希望每次更新值时更新视图 - 因此我想on_change_input在我的python write方法中触发javascript函数来呈现视图.

 @api.one
 def updatevalue(self, val):
      self.value = val
      # TODO call javascript function on_change_input()
Run Code Online (Sandbox Code Playgroud)

目的是,在进程运行时应更新进度条,用户应该在不更新站点的情况下查看进度.

我的任务是否可以使用进度条小部件?或者是否有其他可能在Odoo中显示动态内容?

如果我使用我的updatevalue方法作为按钮,单击按钮后更新进度条而不调用javascript函数并且不刷新页面...但我确实想在我的代码中调用该方法(并且可能在rpc上调用)因此这不是救命 -.-

感谢您的时间!


这是我到目前为止的工作流程:

用户单击该按钮do_time_consuming_task 并调用以下函数:

def do_timeconsuming_task(self):
  ws = websocket.WebSocket()
  ws.connect('ws:/129.0.0.1:1234/')
  data = { 'topic' : 'server_command', 'id' : self.id, 'commandName' : 'do_sth',}
  payload = ujson.dumps(data)
  ws.send(payload)
  ws.close()
Run Code Online (Sandbox Code Playgroud)

在服务器上,接收并处理命令.有一个开放的rpc连接:

odoo = odoorpc.ODOO("129.0.0.1", port=8069)
odoo.login("database", "user", "password")
my_module = odoo.env['my_module.progress_widget_test']

progress_instance = my_module.browse(id)
Run Code Online (Sandbox Code Playgroud)

每次进度值更改时,我都会调用模块的以下方法:

progress_instance.updatevalue(new_value)
Run Code Online (Sandbox Code Playgroud)

当值等于100%时,我关闭连接

odoo.logout()
Run Code Online (Sandbox Code Playgroud)

javascript python openerp odoo-10 odoo-11

14
推荐指数
1
解决办法
1005
查看次数

libgdx-pixmap:我可以以某种方式改变线条的宽度吗?

我想画一条线,然后生成一个纹理(使用 libgdx)。我发现使用像素图从圆形、矩形和线条创建纹理很简单。但是我没有找到如何设置绘制形状的线宽。有没有可能为像素图设置线宽?

这是我到目前为止得到的代码:(我尝试绘制两个实心圆圈并将它们用线连接)

Pixmap pixmap = new Pixmap( 16, 16, Format.RGBA8888 );
pixmap.setColor(Color.BLUE);
pixmap.fillCircle(x1, y1, 10);
pixmap.fillCircle(x2, y2, 10);
pixmap.drawLine(x2, y2, x1, y1); // this line is very thin
Texture pixmaptex = new Texture( pixmap );
pixmap.dispose();
Run Code Online (Sandbox Code Playgroud)

java width pixmap libgdx

6
推荐指数
1
解决办法
2462
查看次数

如何阻止 Odoo 自定义按钮自动保存?

我在我的视图中创建了一个按钮,它触发了模块内的一个方法。但是,单击该按钮后,临时编辑的字段将被保存,并且在单击“放弃”按钮时不会恢复。

这是我的观点的代码:

<form>
  <sheet>
    <group>
    <field name="name" />
    </group>
    <button name="my_button" string="My Button" type="object" class="oe_edit_only" />
  </sheet>
</form>
Run Code Online (Sandbox Code Playgroud)

单击my_button该字段后,该字段name将保存在数据库中,该按钮Discard不再起作用。

在此处输入图片说明

单击我的自定义按钮时,如何防止 Odoo 保存临时数据?

(我正在使用 Odoo10,但我想旧版本的 Odoo 也是如此)

openerp odoo-10

4
推荐指数
1
解决办法
2830
查看次数

带有外部 Python 库的 Odoo 自定义模块

我使用 Python 库ujson在 Python 中创建了一个 Odoo 模块。我使用 手动在我的开发服务器上安装了这个库pip install ujson

现在我想在我的实时服务器上安装该模块。我可以以某种方式告诉 Odoo 模块在安装 ujson 库时安装它吗?所以我只需将模块添加到我的插件路径并通过 Odoo Web 界面安装它?

实现此自动化的另一个原因是,如果我想共享我的自定义模块,这样其他人就不必在他们的服务器上手动安装该库。

有什么建议如何以这种方式配置我的模块吗?或者我应该将库的目录包含在我的模块中?

python-2.7 odoo odoo-10

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

Netbeans:Java Swing:如何更改 JComboBox 项的数据类型

我在设计视图中的 JFrame 中添加了一个 JComboBox,其项目的数据类型默认为字符串:

private javax.swing.JComboBox<String> items;
Run Code Online (Sandbox Code Playgroud)

变量声明会自动添加到 Source 中且无法编辑。有人能告诉我如何更改设计视图中项目的数据类型吗?还是我必须自己在 Source 中创建 JComboBox 组件?

(我使用的是 NetBeans IDE 8.2;Java 版本 1.8)

java swing netbeans jcombobox

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