首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >保存Python等离子体的配置

保存Python等离子体的配置
EN

Stack Overflow用户
提问于 2013-11-30 15:17:46
回答 1查看 397关注 0票数 4

我成功地用Python编写了一个带有配置对话框的质体,在该对话框中可以选择一个文件。我还成功地读出了选定的值。

但是,我如何使选择持久?我很确定有一些KDE/Qt预定义的函数或方法,但我没有找到有关这方面的文档。

下面是我的代码(可以通过等离子窗口启动):

metadata.desktop:

代码语言:javascript
复制
[Desktop Entry]
Encoding=UTF-8
Name=Config Test
Type=Service
ServiceTypes=Plasma/Applet
X-Plasma-API=python
X-Plasma-MainScript=code/main.py

内容/代码/main.py:

代码语言:javascript
复制
# -*- coding: utf-8 -*-

from PyQt4 import QtCore
from PyKDE4.plasma import Plasma
from PyKDE4 import plasmascript

class configTest(plasmascript.Applet):

        def __init__(self, parent, args = None):
                plasmascript.Applet.__init__(self, parent)

        def init(self):
                self.setAspectRatioMode(Plasma.IgnoreAspectRatio)

        def paintInterface(self, painter, option, rect):
                painter.save()
                painter.setPen(QtCore.Qt.black)
                painter.drawText(rect, QtCore.Qt.AlignLeft, str(self.config('main').readEntry('testEntry')))
                painter.restore()

def CreateApplet(parent):
        return configTest(parent) 

内容/ui/config.ui:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?> 
<ui version="4.0"> 
 <class>Config</class> 
  <widget class="QWidget" name="verticalLayoutWidget"> 
   <layout class="QVBoxLayout" name="verticalLayout"> 
    <item> 
     <widget class="KUrlRequester" name="kcfg_testEntry"/> 
    </item> 
   </layout> 
  </widget> 
 <resources/> 
 <connections/> 
</ui>

内容/config/main.xml:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
                          http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
  <kcfgfile name="configTestrc"/>
  <include>kglobalsettings.h</include>
  <group name="main">
    <entry name="testEntry" type="Url"></entry>
  </group>
</kcfg>

谢谢大家的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-18 21:13:23

最后,我可以自己回答这个问题。上面的代码实际上是工作的,配置是自动存储的--一旦软件包安装完毕(通过等离子地图)并由等离子桌面工具启动。

当质体是通过等离子窗口启动时,情况就不是这样.

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20301855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档