本项目XML的桌面渲染依赖GQT开源项目(请感兴趣的朋友加入QQ讨论群:101189702,在群共享文件里下载GQT源码),以下是360界面实现的全部XML代码,所有的代码都在360_ui目录里,事件交互写在360safe.js里(再次申明是桌面程序不是Web):
效果图:
Qt设计器中:
XML:
<?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <class>mainWidget</class> <widget class="QWidget" name="mainWidget"> <property name="geometry"> <rect> <x>0</x> <y>0</y> <width>986</width> <height>714</height> </rect> </property> <property name="windowTitle"> <string>Form</string> </property> <property name="styleSheet"> <string notr="true"/> </property> <layout class="QVBoxLayout" name="verticalLayout"> <property name="spacing"> <number>0</number> </property> <property name="margin"> <number>0</number> </property> <item> <widget class="QFrame" name="titleBar"> <property name="sizePolicy"> <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="minimumSize"> <size> <width>0</width> <height>100</height> </size> </property> <property name="maximumSize"> <size> <width>16777215</width> <height>100</height> </size> </property> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QVBoxLayout" name="verticalLayout_7"> <property name="spacing"> <number>0</number> </property> <property name="margin"> <number>0</number> </property> <item> <layout class="QHBoxLayout" name="horizontalLayout_6"> <property name="spacing"> <number>0</number> </property> <property name="leftMargin"> <number>15</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="rightMargin"> <number>5</number> </property> <item> <widget class="QLabel" name="version_title"> <property name="text"> <string>360安全卫士9.2</string> </property> </widget> </item> <item> <spacer name="horizontalSpacer_8"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> <item> <widget class="QPushButton" name="pushButton"> <property name="minimumSize"> <size> <width>25</width> <height>25</height> </size> </property> <property name="maximumSize"> <size> <width>25</width> <height>25</height> </size> </property> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/medal.png</normaloff>360_img/contentWidget/medal.png</iconset> </property> <property name="iconSize"> <size> <width>25</width> <height>25</height> </size> </property> </widget> </item> <item> <spacer name="horizontalSpacer_9"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeType"> <enum>QSizePolicy::Fixed</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>10</width> <height>20</height> </size> </property> </spacer> </item> <item> <widget class="GButton" name="skin_button"> <property name="gqtIcon" stdset="0"> <pixmap>360_img/sysButton/skin_button.png</pixmap> </property> </widget> </item> <item> <widget class="GButton" name="main_menu_button"> <property name="gqtIcon" stdset="0"> <pixmap>360_img/sysButton/main_menu.png</pixmap> </property> </widget> </item> <item> <widget class="GButton" name="min_button"> <property name="gqtIcon" stdset="0"> <pixmap>360_img/sysButton/min_button.png</pixmap> </property> </widget> </item> <item> <widget class="GButton" name="max_button"> <property name="gqtIcon" stdset="0"> <pixmap>360_img/sysButton/max_button.png</pixmap> </property> </widget> </item> <item> <widget class="GButton" name="close_button"> <property name="gqtIcon" stdset="0"> <pixmap>360_img/sysButton/close_button.png</pixmap> </property> </widget> </item> </layout> </item> <item> <widget class="QFrame" name="titleFrame"> <property name="maximumSize"> <size> <width>16777215</width> <height>75</height> </size> </property> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QHBoxLayout" name="horizontalLayout"> <property name="spacing"> <number>2</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="bottomMargin"> <number>0</number> </property> <item> <widget class="GToolButton" name="tiJian"> <property name="minimumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="text"> <string>电脑体检</string> </property> <property name="icon"> <iconset> <normaloff>360_img/toolWidget/tiJian.png</normaloff>360_img/toolWidget/tiJian.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> <property name="gqtChecked" stdset="0"> <bool>true</bool> </property> </widget> </item> <item> <widget class="GToolButton" name="muMa"> <property name="minimumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="text"> <string>木马查杀</string> </property> <property name="icon"> <iconset> <normaloff>360_img/toolWidget/muMa.png</normaloff>360_img/toolWidget/muMa.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> </widget> </item> <item> <widget class="GToolButton" name="louDong"> <property name="minimumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="text"> <string>漏洞修复</string> </property> <property name="icon"> <iconset> <normaloff>360_img/toolWidget/louDong.png</normaloff>360_img/toolWidget/louDong.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> </widget> </item> <item> <widget class="GToolButton" name="xiTong"> <property name="minimumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="text"> <string>系统修复</string> </property> <property name="icon"> <iconset> <normaloff>360_img/toolWidget/xiTong.png</normaloff>360_img/toolWidget/xiTong.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> </widget> </item> <item> <widget class="GToolButton" name="qingLi"> <property name="minimumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="text"> <string>电脑清理</string> </property> <property name="icon"> <iconset> <normaloff>360_img/toolWidget/qingLi.png</normaloff>360_img/toolWidget/qingLi.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> </widget> </item> <item> <widget class="GToolButton" name="jiaSu"> <property name="minimumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="text"> <string>优化加速</string> </property> <property name="icon"> <iconset> <normaloff>360_img/toolWidget/jiaSu.png</normaloff>360_img/toolWidget/jiaSu.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> </widget> </item> <item> <widget class="GToolButton" name="menZhen"> <property name="minimumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="text"> <string>电脑专家</string> </property> <property name="icon"> <iconset> <normaloff>360_img/toolWidget/menZhen.png</normaloff>360_img/toolWidget/menZhen.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> </widget> </item> <item> <widget class="GToolButton" name="ruanJian"> <property name="minimumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>75</height> </size> </property> <property name="text"> <string>软件管理</string> </property> <property name="icon"> <iconset> <normaloff>360_img/toolWidget/ruanJian.png</normaloff>360_img/toolWidget/ruanJian.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> </widget> </item> <item> <spacer name="horizontalSpacer"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> <item> <widget class="QLabel" name="logo"> <property name="sizePolicy"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="minimumSize"> <size> <width>140</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>140</width> <height>67</height> </size> </property> <property name="text"> <string/> </property> <property name="pixmap"> <pixmap>360_img/logo.png</pixmap> </property> </widget> </item> </layout> </widget> </item> </layout> </widget> </item> <item> <widget class="QFrame" name="contentFrame"> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QHBoxLayout" name="horizontalLayout_3"> <property name="margin"> <number>0</number> </property> <item> <widget class="QFrame" name="leftFrame"> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QVBoxLayout" name="verticalLayout_3"> <item> <layout class="QHBoxLayout" name="horizontalLayout_2"> <property name="sizeConstraint"> <enum>QLayout::SetMinimumSize</enum> </property> <property name="leftMargin"> <number>30</number> </property> <property name="topMargin"> <number>20</number> </property> <item alignment="Qt::AlignTop"> <widget class="QLabel" name="label"> <property name="sizePolicy"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="minimumSize"> <size> <width>158</width> <height>125</height> </size> </property> <property name="maximumSize"> <size> <width>158</width> <height>125</height> </size> </property> <property name="text"> <string/> </property> <property name="pixmap"> <pixmap>360_img/contentWidget/computer.png</pixmap> </property> <property name="alignment"> <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set> </property> </widget> </item> <item> <layout class="QVBoxLayout" name="verticalLayout_2"> <property name="spacing"> <number>15</number> </property> <property name="topMargin"> <number>20</number> </property> <item> <widget class="QLabel" name="suggest_label"> <property name="text"> <string>上次体检良好,请保持每天体检的习惯!</string> </property> </widget> </item> <item> <widget class="QLabel" name="system_safe_label"> <property name="text"> <string>上次体检时间是一分钟前,还有2个优化项可以优化。</string> </property> </widget> </item> <item> <spacer name="verticalSpacer_2"> <property name="orientation"> <enum>Qt::Vertical</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>20</width> <height>40</height> </size> </property> </spacer> </item> </layout> </item> </layout> </item> <item alignment="Qt::AlignHCenter|Qt::AlignVCenter"> <widget class="QPushButton" name="power_button"> <property name="sizePolicy"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="minimumSize"> <size> <width>180</width> <height>70</height> </size> </property> <property name="maximumSize"> <size> <width>180</width> <height>70</height> </size> </property> <property name="text"> <string>立即体检</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/power.png</normaloff>360_img/contentWidget/power.png</iconset> </property> <property name="iconSize"> <size> <width>35</width> <height>35</height> </size> </property> </widget> </item> <item> <spacer name="verticalSpacer"> <property name="orientation"> <enum>Qt::Vertical</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>20</width> <height>40</height> </size> </property> </spacer> </item> </layout> </widget> </item> <item> <widget class="QFrame" name="rightFrame"> <property name="sizePolicy"> <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="minimumSize"> <size> <width>273</width> <height>0</height> </size> </property> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QVBoxLayout" name="verticalLayout_6"> <property name="spacing"> <number>0</number> </property> <property name="margin"> <number>0</number> </property> <item> <widget class="QFrame" name="rightTopWidget"> <property name="sizePolicy"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="minimumSize"> <size> <width>250</width> <height>130</height> </size> </property> <property name="maximumSize"> <size> <width>250</width> <height>130</height> </size> </property> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QVBoxLayout" name="verticalLayout_4"> <property name="spacing"> <number>0</number> </property> <property name="margin"> <number>10</number> </property> <item> <layout class="QHBoxLayout" name="login_layout"> <property name="spacing"> <number>0</number> </property> <property name="leftMargin"> <number>5</number> </property> <item> <widget class="QPushButton" name="login_button"> <property name="minimumSize"> <size> <width>240</width> <height>60</height> </size> </property> <property name="maximumSize"> <size> <width>240</width> <height>60</height> </size> </property> <property name="text"> <string>登录我的360账号</string> </property> </widget> </item> </layout> </item> <item> <layout class="QHBoxLayout" name="register_layout"> <property name="spacing"> <number>5</number> </property> <item> <spacer name="horizontalSpacer_2"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> <item> <widget class="QLabel" name="priv_label"> <property name="text"> <string/> </property> <property name="pixmap"> <pixmap>360_img/contentWidget/priv.png</pixmap> </property> </widget> </item> <item> <widget class="QLabel" name="info_label"> <property name="text"> <string>开启炫动卫士图标,</string> </property> </widget> </item> <item> <widget class="QPushButton" name="register_button"> <property name="minimumSize"> <size> <width>0</width> <height>0</height> </size> </property> <property name="maximumSize"> <size> <width>555</width> <height>555</height> </size> </property> <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> <property name="text"> <string>10秒免费注册</string> </property> </widget> </item> <item> <spacer name="horizontalSpacer_3"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> </layout> </item> <item> <layout class="QHBoxLayout" name="privilege_layout"> <property name="spacing"> <number>8</number> </property> <item> <spacer name="horizontalSpacer_4"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> <item> <widget class="QLabel" name="privilege_label"> <property name="text"> <string>专享特权:</string> </property> </widget> </item> <item> <widget class="QPushButton" name="safe_button"> <property name="minimumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="maximumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/360.png</normaloff>360_img/contentWidget/360.png</iconset> </property> </widget> </item> <item> <widget class="QPushButton" name="tab_button"> <property name="minimumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="maximumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/tab.png</normaloff>360_img/contentWidget/tab.png</iconset> </property> </widget> </item> <item> <widget class="QPushButton" name="pet_button"> <property name="minimumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="maximumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/pet.png</normaloff>360_img/contentWidget/pet.png</iconset> </property> </widget> </item> <item> <widget class="QPushButton" name="lottery_button"> <property name="minimumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="maximumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/lottery.png</normaloff>360_img/contentWidget/lottery.png</iconset> </property> </widget> </item> <item> <widget class="QPushButton" name="cloud_five_button"> <property name="minimumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="maximumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/cloud_five.png</normaloff>360_img/contentWidget/cloud_five.png</iconset> </property> </widget> </item> <item> <widget class="QPushButton" name="caipiao_button"> <property name="minimumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="maximumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/caipiao.png</normaloff>360_img/contentWidget/caipiao.png</iconset> </property> </widget> </item> <item> <spacer name="horizontalSpacer_5"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> </layout> </item> </layout> </widget> </item> <item> <widget class="QFrame" name="right_center_widget"> <property name="minimumSize"> <size> <width>250</width> <height>90</height> </size> </property> <property name="maximumSize"> <size> <width>250</width> <height>90</height> </size> </property> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QHBoxLayout" name="horizontalLayout_4"> <property name="spacing"> <number>0</number> </property> <property name="margin"> <number>0</number> </property> <item> <widget class="QToolButton" name="fireproof_button"> <property name="minimumSize"> <size> <width>73</width> <height>73</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>73</height> </size> </property> <property name="text"> <string>木马防火墙.</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/fireproof.png</normaloff>360_img/contentWidget/fireproof.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item> <widget class="QLabel" name="line_label_1"> <property name="minimumSize"> <size> <width>1</width> <height>90</height> </size> </property> <property name="maximumSize"> <size> <width>1</width> <height>90</height> </size> </property> <property name="text"> <string/> </property> </widget> </item> <item> <widget class="QToolButton" name="triggerman_button"> <property name="minimumSize"> <size> <width>73</width> <height>73</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>73</height> </size> </property> <property name="text"> <string>360保镖</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/triggerman.png</normaloff>360_img/contentWidget/triggerman.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item> <widget class="QLabel" name="line_label_2"> <property name="minimumSize"> <size> <width>1</width> <height>90</height> </size> </property> <property name="maximumSize"> <size> <width>1</width> <height>90</height> </size> </property> <property name="text"> <string/> </property> </widget> </item> <item> <widget class="QToolButton" name="net_shop_button"> <property name="minimumSize"> <size> <width>73</width> <height>73</height> </size> </property> <property name="maximumSize"> <size> <width>73</width> <height>73</height> </size> </property> <property name="text"> <string>网购先赔</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/net_shop.png</normaloff>360_img/contentWidget/net_shop.png</iconset> </property> <property name="iconSize"> <size> <width>48</width> <height>48</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> </layout> </widget> </item> <item> <widget class="QFrame" name="right_center_function_widget"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QVBoxLayout" name="verticalLayout_5"> <property name="spacing"> <number>10</number> </property> <property name="margin"> <number>0</number> </property> <item> <layout class="QHBoxLayout" name="h_layout"> <property name="spacing"> <number>0</number> </property> <property name="leftMargin"> <number>10</number> </property> <property name="topMargin"> <number>5</number> </property> <item> <widget class="QLabel" name="function_label"> <property name="text"> <string>功能大全</string> </property> </widget> </item> <item> <spacer name="horizontalSpacer_6"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> <item> <widget class="QPushButton" name="more_button"> <property name="minimumSize"> <size> <width>50</width> <height>25</height> </size> </property> <property name="maximumSize"> <size> <width>50</width> <height>25</height> </size> </property> <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> <property name="text"> <string>更多</string> </property> </widget> </item> </layout> </item> <item> <layout class="QGridLayout" name="gridLayout"> <property name="leftMargin"> <number>5</number> </property> <property name="rightMargin"> <number>5</number> </property> <property name="bottomMargin"> <number>5</number> </property> <property name="spacing"> <number>0</number> </property> <item row="1" column="2"> <widget class="QToolButton" name="auto_run_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>开机加速</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/auto_run.png</normaloff>360_img/contentWidget/auto_run.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="0" column="1"> <widget class="QToolButton" name="mobile_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>手机助手</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/mobile.png</normaloff>360_img/contentWidget/mobile.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="2" column="2"> <widget class="QToolButton" name="first_add_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>系统急救箱</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/first_add.png</normaloff>360_img/contentWidget/first_add.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="0" column="2"> <widget class="QToolButton" name="game_box_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>游戏盒子</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/game_box.png</normaloff>360_img/contentWidget/game_box.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="2" column="1"> <widget class="QToolButton" name="net_pretext_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>360网盾</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/net_pretext.png</normaloff>360_img/contentWidget/net_pretext.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="2" column="0"> <widget class="QToolButton" name="net_speed_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>宽带测速器</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/net_speed.png</normaloff>360_img/contentWidget/net_speed.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="0" column="0"> <widget class="QToolButton" name="recovery_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>文件恢复</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/recovery.png</normaloff>360_img/contentWidget/recovery.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="1" column="0"> <widget class="QToolButton" name="desktop_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>安全桌面</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/desktop.png</normaloff>360_img/contentWidget/desktop.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="1" column="1"> <widget class="QToolButton" name="net_repair_button"> <property name="minimumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="maximumSize"> <size> <width>87</width> <height>67</height> </size> </property> <property name="text"> <string>断网急救箱</string> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/net_repair.png</normaloff>360_img/contentWidget/net_repair.png</iconset> </property> <property name="iconSize"> <size> <width>32</width> <height>32</height> </size> </property> <property name="toolButtonStyle"> <enum>Qt::ToolButtonTextUnderIcon</enum> </property> </widget> </item> <item row="3" column="1"> <spacer name="verticalSpacer_3"> <property name="orientation"> <enum>Qt::Vertical</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>20</width> <height>40</height> </size> </property> </spacer> </item> </layout> </item> </layout> </widget> </item> <item> <widget class="QFrame" name="right_bottom_widget"> <property name="sizePolicy"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="minimumSize"> <size> <width>260</width> <height>30</height> </size> </property> <property name="maximumSize"> <size> <width>250</width> <height>30</height> </size> </property> <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> <layout class="QHBoxLayout" name="horizontalLayout_5"> <property name="spacing"> <number>5</number> </property> <property name="leftMargin"> <number>10</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="rightMargin"> <number>10</number> </property> <property name="bottomMargin"> <number>0</number> </property> <item> <widget class="QLabel" name="icon_label"> <property name="minimumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="maximumSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="text"> <string/> </property> <property name="pixmap"> <pixmap>360_img/contentWidget/cloud.png</pixmap> </property> </widget> </item> <item> <widget class="QLabel" name="connect_label"> <property name="text"> <string>成功连接至晕安全中心</string> </property> </widget> </item> <item> <spacer name="horizontalSpacer_7"> <property name="orientation"> <enum>Qt::Horizontal</enum> </property> <property name="sizeHint" stdset="0"> <size> <width>40</width> <height>20</height> </size> </property> </spacer> </item> <item> <widget class="QLabel" name="version_label"> <property name="minimumSize"> <size> <width>60</width> <height>20</height> </size> </property> <property name="maximumSize"> <size> <width>555</width> <height>555</height> </size> </property> <property name="text"> <string/> </property> <property name="pixmap"> <pixmap>360_img/contentWidget/version.png</pixmap> </property> </widget> </item> <item> <widget class="QPushButton" name="version_button"> <property name="minimumSize"> <size> <width>20</width> <height>20</height> </size> </property> <property name="maximumSize"> <size> <width>20</width> <height>20</height> </size> </property> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>360_img/contentWidget/version.png</normaloff>360_img/contentWidget/version.png</iconset> </property> </widget> </item> </layout> </widget> </item> </layout> </widget> </item> </layout> </widget> </item> </layout> </widget> <customwidgets> <customwidget> <class>GButton</class> <extends>QPushButton</extends> <header>gbutton.h</header> </customwidget> <customwidget> <class>GToolButton</class> <extends>QToolButton</extends> <header>gtoolbutton.h</header> </customwidget> </customwidgets> <resources/> <connections/> </ui>
程序在360UI.rar中,运行可查看效果哦!
GQT开源项目简介:
A C++ GUI Framework Written by Like "Java"(Easily),Run as "C++" (High-Performance),And Show Perfect!
开源项目地址:
QQ讨论群:101189702 (请注明GQT或Qt,C++等)
设计文档:http://goo.gl/MM9E7j
PPT介绍(English):http://goo.gl/pEKiE9
其他Demo程序(本博客包含了GQT载入UI支持的所有3种机制[Qt dll,XML和QML]):
实现的QQ登录界面(基于dll载入方式):
扑克牌翻转效果(QML载入方式):
相关推荐
【高仿360UI的实现(XML+Script)】是一个项目,旨在通过XML和脚本语言来构建一个与360安全卫士用户界面类似的交互体验。在IT领域,尤其是软件开发中,UI(User Interface)设计是至关重要的,因为它直接影响到用户...
本文详细分析了2023年7月抖音平台上美妆品牌「里季、VC美妆、娇润泉」的社媒营销和电商业绩。通过对销售额、直播销售、视频销售、热门商品、粉丝画像等方面的深入剖析,揭示了各品牌在抖音平台的成功之道。里季凭借创始人紫橙董事长的直播带货取得显著成绩,VC美妆则依靠素颜霜爆款和品牌自播,娇润泉通过洁面乳和精华液的推广,借助尾部达人视频切片和头部达人直播实现销售增长。
1、文件说明: Centos8操作系统subscription-manager-rhsm-certificates-1.28.21-3.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf subscription-manager-rhsm-certificates-1.28.21-3.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm
内容概要:本文详细介绍了力士乐驱动调试软件13v16中文版的特点及其在伺服驱动和液压同步调试中的应用。软件具有中文界面,便于理解和操作,涵盖参数设置、监控、诊断和调试四大模块。参数设置模块支持通过输入数值或拖动滑块调整电机速度和加速度;监控模块提供实时数据监测和图表展示;诊断模块帮助排查和解决问题;调试模块适用于高级调试如PID参数调整。此外,文中还分享了多个实用技巧,如批量修改参数、故障代码速查、动态链接库调用等。 适合人群:从事工业自动化、机电一体化领域的工程师和技术人员,尤其是对伺服驱动和液压控制系统有一定经验的人群。 使用场景及目标:①用于伺服驱动系统的调试,确保电机参数正确配置和稳定运行;②用于液压同步控制项目的调试,提高同步精度;③通过丰富的案例和技巧分享,帮助用户高效解决常见问题,提升工作效率。 其他说明:本文不仅介绍了软件的基本功能,还深入探讨了实际调试过程中的一些经验和技巧,为用户提供全面的指导和支持。
计算机绘图-讲稿.pdf
计算机二级access历年真题及讲解.pdf
计算机复习小结.pdf
1、文件说明: Centos8操作系统stubby-0.4.2-2.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf stubby-0.4.2-2.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm
计算机二级C语言历年真题.pdf
内容概要:本文详细介绍了一种利用ELMAN神经网络对红酒数据集进行分类的方法及其MATLAB实现。首先介绍了红酒数据集的特点以及数据预处理步骤,包括数据读取、特征提取、归一化等。接着阐述了ELMAN神经网络的基本概念及其在处理时间序列和模式识别方面的优势。随后展示了如何在MATLAB中创建、配置和训练ELMAN神经网络,包括设置网络结构、选择合适的训练参数等。最后通过评估模型性能,计算分类准确率,并绘制混淆矩阵来展示实验结果。此外还提供了代码优化建议,如调整网络参数、改进数据处理方法等。 适合人群:对机器学习尤其是神经网络感兴趣的初学者,以及有一定MATLAB编程基础的研究人员。 使用场景及目标:适用于想要了解ELMAN神经网络的工作原理及其应用的人群;希望通过具体案例掌握如何使用MATLAB实现神经网络建模和训练的技术人员。 其他说明:文中提供的代码可以直接运行,用户可根据自身需求修改数据源、调整网络参数等,从而应用于不同的分类任务。同时,对于非时序数据也可以考虑采用其他类型的神经网络以提高效率。
数据结构C/C++实现代码,供参考学习,练习,用于面试考试
内容概要:本文详细介绍了Halcon与C#联合开发的一个稳定版本的工业视觉框架。首先强调了环境配置的重要性,确保Halcon的runtime版本与开发环境一致,避免常见的dll版本不匹配问题。接着阐述了图像处理流水线的设计,利用Task+async/await提高效率并避免界面卡顿。文中展示了如何通过状态机实现流程引擎,使配置文件定义处理步骤更加灵活。此外,文章深入探讨了内存管理和异常处理的最佳实践,如使用using语句确保HRegion对象正确释放,以及将Halcon的错误码转化为易读信息。最后,作者分享了一些实用技巧,如通过WCF实现算法和服务化通信,以及提供了一个PCB板检测的Demo项目作为实例。 适合人群:具有一定编程基础,尤其是熟悉C#和Halcon的开发人员,以及从事工业视觉项目的工程师。 使用场景及目标:适用于希望深入了解Halcon与C#联合开发的工业视觉框架的技术人员。主要目标是帮助读者掌握图像处理流程、内存管理、异常处理等方面的知识,从而能够构建高效稳定的工业视觉系统。 其他说明:文中提供了大量代码片段和实践经验,有助于读者更好地理解和应用相关技术。同时,提醒读者在实际开发过程中需要注意的一些常见问题及其解决方案。
计算机二级笔试(选择)真题及答案.pdf
源码
内容概要:本文探讨了在机械模型设计中如何利用技术交底书进行创新。文章首先解释了技术交底书的概念及其重要性,接着通过具体的代码示例展示了如何在机械臂设计中引入动态调整算法以提高性能和效率。此外,文章介绍了如何使用Python和YAML等工具将机械模型的参数化设计与技术交底书相结合,实现了自动化更新和版本控制。最后,文章强调了在设计过程中发现并解决具体问题的重要性,如渐开线参数修形、轨迹预测算法优化以及模块化参数系统的应用。 适合人群:机械工程师、软件开发者、项目经理和技术文档撰写人员。 使用场景及目标:适用于机械模型设计项目的各个阶段,旨在提升设计效率、减少错误率、优化性能,并使技术交底书成为动态且易维护的文档。 其他说明:文中提到的技术手段不仅限于特定行业,可以广泛应用于各种涉及复杂机械系统的工程项目中。同时,文章鼓励跨学科合作,如机械工程与编程的结合,以实现更高效的解决方案。
内容概要:本文详细记录了作者在Cadence平台中完成一个两级放大电路版图设计的过程,涵盖了从初步设计到最终通过LVS(Layout vs Schematic)和DRC(Design Rule Check)验证的所有步骤。文章首先介绍了电路的基本结构和参数设定,如共源放大器和共栅放大器的关键参数调整,以及在Virtuoso环境中进行的具体操作。接着,作者分享了在版图绘制过程中遇到的各种挑战及其解决方案,包括晶体管尺寸优化、走线布局、寄生参数控制、金属层间距调整等。此外,还特别强调了LVS和DRC验证中的常见问题及应对策略,如端口不匹配、器件参数偏差、金属密度规则等。最后,作者总结了一些实用的设计技巧和注意事项,为后续类似项目提供了宝贵的经验。 适合人群:从事集成电路设计的专业人士,尤其是对模拟电路版图设计感兴趣的工程师和技术爱好者。 使用场景及目标:帮助读者掌握Cadence环境下两级放大电路版图设计的方法,提高LVS和DRC验证的成功率,减少设计周期内的返工次数,提升设计效率。 其他说明:文中提到的具体数值和代码片段仅供参考,在实际应用中需要根据具体的工艺规则和个人需求进行适当调整。
内容概要:本文详细介绍了如何利用西门子S7-200 PLC的指针操作来高效地进行数据统计,具体包括求平均值、最大值和最小值的方法。文中提供了完整的代码示例,涵盖了从初始化、循环处理到最终结果输出的全过程。此外,还讨论了指针操作的优势以及一些常见的注意事项,如数据类型的正确处理、防止溢出等。文章强调了指针操作在批量数据处理中的高效性和灵活性,特别是在工控项目中的应用价值。 适合人群:从事工业自动化控制系统的开发人员,尤其是对西门子S7-200 PLC有一定了解的技术人员。 使用场景及目标:适用于需要频繁处理大量数据的工控项目,如温度采集、压力波动分析等。通过掌握本文介绍的方法,开发者能够提高数据处理效率,减少代码复杂度,并确保程序的稳定性和可靠性。 其他说明:文章不仅提供了具体的编程技巧,还分享了许多实践经验,帮助读者更好地理解和应用这些技术。同时提醒读者在实际操作中应注意的一些潜在问题,如数据类型匹配、指针越界等。
1、文件说明: Centos8操作系统subunit-perl-1.4.0-14.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf subunit-perl-1.4.0-14.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm
C++相关书籍,计算机相关书籍,linux相关及http等计算机学习、面试书籍。