vnpy/vn.trader/vtMain.py

59 lines
1.6 KiB
Python
Raw Normal View History

2016-07-02 03:12:44 +00:00
# encoding: UTF-8
import sys
2017-04-28 14:10:07 +00:00
import os
2016-07-02 03:12:44 +00:00
import ctypes
import platform
2017-04-28 14:10:07 +00:00
import vtPath
2016-07-02 03:12:44 +00:00
from vtEngine import MainEngine
from uiMainWindow import *
2017-04-28 14:10:07 +00:00
# 文件路径名
path = os.path.abspath(os.path.dirname(__file__))
ICON_FILENAME = 'vnpy.ico'
ICON_FILENAME = os.path.join(path, ICON_FILENAME)
SETTING_FILENAME = 'VT_setting.json'
SETTING_FILENAME = os.path.join(path, SETTING_FILENAME)
2016-07-03 16:59:48 +00:00
from setup_logger import setup_logger
2016-07-13 15:43:16 +00:00
setup_logger(filename='logs/vnpy_{0}.log'.format(datetime.now().strftime('%m%d_%H%M')), debug=False)
2016-07-03 16:59:48 +00:00
# ----------------------------------------------------------------------
2016-07-02 03:12:44 +00:00
def main():
"""主程序入口"""
# 重载sys模块设置默认字符串编码方式为utf8
reload(sys)
sys.setdefaultencoding('utf8')
# 设置Windows底部任务栏图标
if 'Windows' in platform.uname() :
ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID('vn.trader')
# 初始化Qt应用对象
app = QtGui.QApplication(sys.argv)
2017-04-28 14:10:07 +00:00
app.setWindowIcon(QtGui.QIcon(ICON_FILENAME))
2016-07-02 03:12:44 +00:00
app.setFont(BASIC_FONT)
# 设置Qt的皮肤
try:
2017-04-28 14:10:07 +00:00
f = file(SETTING_FILENAME)
2016-07-02 03:12:44 +00:00
setting = json.load(f)
if setting['darkStyle']:
import qdarkstyle
app.setStyleSheet(qdarkstyle.load_stylesheet(pyside=False))
2017-04-28 14:10:07 +00:00
f.close()
2016-07-02 03:12:44 +00:00
except:
pass
# 初始化主引擎和主窗口对象
mainEngine = MainEngine()
mainWindow = MainWindow(mainEngine, mainEngine.eventEngine)
mainWindow.showMaximized()
# 在主线程中启动Qt事件循环
sys.exit(app.exec_())
if __name__ == '__main__':
main()