QProcessEnvironment Class Reference

[QtCore module]

该QProcessEnvironment类认为可以传递给一个程序的环境变量。More…

Methods

  • __init__ (self)
  • __init__ (self, QProcessEnvironment other)
  • clear (self)
  • bool contains (self, QString name)
  • insert (self, QString name, QString value)
  • insert (self, QProcessEnvironment e)
  • bool isEmpty (self)
  • QStringList keys (self)
  • remove (self, QString name)
  • QStringList toStringList (self)
  • QString value (self, QString name, QString defaultValue = QString())

Static Methods

  • QProcessEnvironment systemEnvironment ()

Special Methods

  • bool __eq__ (self, QProcessEnvironment other)
  • bool __ne__ (self, QProcessEnvironment other)

Detailed Description

该QProcessEnvironment类认为可以传递给一个程序的环境变量。

一个进程的环境是由一组被称为环境变量key = value对的。该QProcessEnvironment类包装的概念,并可以方便地操纵这些变量。它的意思也可以一起使用QProcess,设置为子进程的环境。它不能被用于改变当前进程的环境。

可以用以下方式获得的调用进程的环境QProcessEnvironment.systemEnvironment( ) 。

在Unix系统中,变量名称是区分大小写的。出于这个原因,这个类不会接触到变量的名称。还要注意的Unix环境允许两个变量名和内容,包含任意的二进制数据(除NUL字符),但是这是不支持QProcessEnvironment 。这个类只支持名称和可编码是由当前区域设置(见QTextCodec.codecForLocale )值。

在Windows中,变量名是大小写不敏感的。因此, QProcessEnvironment总是大写的名字,做不区分大小写的比较。

在Windows CE上,环境的概念并不存在。这个类将保持与其他平台之间的兼容性设置的值,但设置的值将不会对正在创建的过程没有影响。


Method Documentation

  1. QProcessEnvironment.__init__ (self)

创建一个新的QProcessEnvironment对象。此构造函数创建一个空的环境。如果在设置QProcess,这将导致当前的环境变量被删除。

  1. QProcessEnvironment.__init__ (self, QProcessEnvironment other)

创建QProcessEnvironment对象,它是一个拷贝other

  1. QProcessEnvironment.clear (self)

移除所有这一切key = value对QProcessEnvironment对象,使之为空。

See also isEmpty()和systemEnvironment( ) 。

  1. bool QProcessEnvironment.contains (self, QString name)

返回True如果name环境变量name在这个被发现QProcessEnvironment对象。

在Windows中,变量名是大小写不敏感的,所以关键是转换为大写搜索之前。在其他系统上,名称是区分大小写的,因此没有改造中的应用。

See also insert()和value( ) 。

  1. QProcessEnvironment.insert (self, QString name, QString value)

插入名称的环境变量name和内容value这个QProcessEnvironment对象。如果该变量已经存在,它被替换为新值。

在Windows中,变量名是大小写不敏感的,所以插入之前这个函数总是变大写变量名。在其他系统上,名称是区分大小写的,所以没有变换应用。

在大多数系统中,没有内容插入一个变量将有应用,如果该变量没有被设置在所有相同的效果。然而,为了保证不存在任何不兼容,要删除一个变量,请使用remove()函数。

See also contains( )remove()和value( ) 。

  1. QProcessEnvironment.insert (self, QProcessEnvironment e)

这是一个重载函数。

插入的内容e在这QProcessEnvironment对象。在这个对象的变量,也存在于e将被复盖。

此功能被引入Qt的4.8 。

  1. bool QProcessEnvironment.isEmpty (self)

返回True如果QProcessEnvironment对象是空的:那就是有没有设置key = value对。

See also clear( )systemEnvironment()和insert( ) 。

  1. QStringList QProcessEnvironment.keys (self)

返回包含在这一切的变数名称的列表QProcessEnvironment对象。

此功能被引入Qt的4.8 。

  1. QProcessEnvironment.remove (self, QString name)

删除所确定的环境变量name由此QProcessEnvironment对象。如果该变量不存在之前,没有任何反应。

在Windows中,变量名是大小写不敏感的,所以关键是转换为大写搜索之前。在其他系统上,名称是区分大小写的,因此没有改造中的应用。

See also contains( )insert()和value( ) 。

  1. QProcessEnvironment QProcessEnvironment.systemEnvironment ()

[

该systemEnvironment函数返回调用进程的环境。

]($docs-qprocessenvironment.html)

它返回一个QProcessEnvironment。这个函数不缓存系统环境。因此,有可能获得环境的更新版本,如果低级别的C库函数如setenvOTputenv已被调用。

但是请注意,重复调用此函数将重新QProcessEnvironment对象,这是一个非平凡的操作。

此功能被引入Qt的4.6 。

See also QProcess.systemEnvironment( ) 。

  1. QStringList QProcessEnvironment.toStringList (self)

这个转换QProcessEnvironment对象转换成字符串,一个用于设置每个环境变量的列表。环境变量的名称和它的值是由一个平等的字符(’ = ‘)隔开。

QStringList此函数返回的内容是适合与QProcess.setEnvironment功能的使用。然而,它是推荐使用QProcess.setProcessEnvironment代替,因为这将避免不必要的数据的复制。

See also systemEnvironment( )QProcess.systemEnvironment( )QProcess.environment()和QProcess.setEnvironment( ) 。

  1. QString QProcessEnvironment.value (self, QString name, QString defaultValue = QString())

这个搜索QProcessEnvironment对象,用于确定一个变量name并返回它的值。如果在该对象中找到的变量,则defaultValue返回来代替。

在Windows中,变量名是大小写不敏感的,所以关键是转换为大写搜索之前。在其他系统上,名称是区分大小写的,因此没有改造中的应用。

See also contains( )insert()和remove( ) 。

  1. bool QProcessEnvironment.__eq__ (self, QProcessEnvironment other)
  1. bool QProcessEnvironment.__ne__ (self, QProcessEnvironment other)