如何在 spynner/PyQt4 中设置应用程序名称?

Posted

技术标签:

【中文标题】如何在 spynner/PyQt4 中设置应用程序名称?【英文标题】:How to set the application name in spynner/PyQt4? 【发布时间】:2011-11-14 20:15:43 【问题描述】:

我在网上搜索过如何将名称放在 PyQt4 应用程序边框的顶部。我看到了 setCaption() 方法(就像在 http://nullege.com/codes/search/PyQt4.QtGui.QDialog.setCaption 中一样)但我不知道如何使用它以及它是否是好的方法(我已经测试过 browser.setCaption("foobar") ) 我的应用基于spynner,也许我应该在我的脚本中导入 PyQt4.QtGui.QDialog ? 任何例子都将不胜感激:)

这是整个代码(可以按原样运行):

#!/usr/bin/python2
# -*- coding: utf8 -*-
# vim:ts=4:sw=4

login = "patakraouzeck@gmail.com"
passwd = "tartempionisthebest"
useragent = "Mozilla/5.0 (Windows NT 6.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1"

import spynner

def displayCurrentUri():
    return browser.webpage.mainFrame().url().toString()


browser = spynner.Browser(
        #debug_level=spynner.WARNING,
        debug_level=spynner.ERROR,
        #debug_level=spynner.DEBUG,
        #debug_level=spynner.INFO,

        user_agent = useragent
)

browser.create_webview(True)
browser.hide()

browser.load("http://television.telerama.fr/tele/grille.php")
browser.wk_fill("input[name=email]", login)
browser.wk_fill("input[name=password]", passwd)
browser.click("input[name=go-ident]")
browser.wait_load()

JS_str = (
        """
// VARIABLES PARAMETRABLES
var bgcol = 'black';    // optionnel : couleur du fond compatible avec les CSS

// BODY CONTENT
document.getElementsByClassName("megabanner-top")[0].innerhtml = "";
document.getElementById("listeurl").parentNode.removeChild(document.getElementById("listeurl"));
document.getElementById("barre-ident").parentNode.removeChild(document.getElementById("barre-ident"));
document.getElementById("barre-nav").parentNode.removeChild(document.getElementById("barre-nav"));
document.getElementById("bottom1").parentNode.removeChild(document.getElementById("bottom1"));
document.getElementById("bottom2").parentNode.removeChild(document.getElementById("bottom2"));
document.getElementById("fil").parentNode.removeChild(document.getElementById("fil"));
document.getElementById("mentions-2008").parentNode.removeChild(document.getElementById("mentions-2008"));
document.getElementById("contenu_pied_de_page_fixe").innerHTML=" ";

// CSS CONTENT
document.body.style.setProperty('background-color', bgcol, null);
document.body.style.backgroundImage="none"; 
document.getElementById("ventre").style.setProperty('padding-top', '0px', null);
document.getElementById("ventre").style.setProperty('padding-bottom', '0px', null);
document.getElementById("gene").style.setProperty('margin', '0%', null);
document.getElementById("gene").style.setProperty('background-color', "white", null);
document.getElementById("sur-gene").style.setProperty('width', '1000px', null);
document.getElementById("contenu_pied_de_page_fixe").style.setProperty('height', '0px', null);

// TRANCHE HORAIRE
changerMaintenant(0);
        """
        )

browser.webview.setGeometry(0,0,1440,1800) # x, y, w, h -> http://doc.qt.nokia.com/stable/application-windows.html#window-geometry
browser.webview.resize(1440,1800) # w, h
browser.show()

browser.runjs(JS_str)
browser.wait_load()
#browser.close()

【问题讨论】:

【参考方案1】:
browser.webview.setWindowTitle('the title')

https://github.com/makinacorpus/spynner/blob/master/src/spynner/browser.py#L885

http://doc.qt.nokia.com/latest/qwebview-members.html

【讨论】:

以上是关于如何在 spynner/PyQt4 中设置应用程序名称?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android 中设置 libsvm?

如何在 C# 中的控制台应用程序中设置鼠标光标的位置?

如何在 nativescript 中设置方向

如何在 Android 应用中设置全息黑暗主题?

如何在黑莓应用程序中设置备用入口点?

如何在 springboot graphql 应用程序中设置基本 url