Qt版連視の極速連視:インタフェース設計(一)QSS交換テーマ
2779 ワード
【ソースおよびインストールパッケージダウンロードアドレス】http://code.google.com/p/speedlink/downloads/list
極速連視のインタフェースの特徴:
1.交換テーマのサポート
2.画面を全て切り替えることができ、基本的にダイアログなどを使わずにメッセージを提示する
3.使用するコントロール(上に移動して音を出すボタン、連続して独立した論理機能を持つLabelなど)はuiファイルに直接統合されています.
Qtでは、QSSという興味深い空間スタイルを変える方法が提供されています.かなりの場合、コントロールスタイルをあまり複雑な方法で交換する必要はありません.CSSのような簡単な言語を使用すればコントロールスタイルを規定することができます.これについてはQt以前に持参したexampleを参照することができます.qt/examples/widgets/,styleとstylesheetの2つを参照することができます.例えば、Qtを使ってパスワードを球形に表示するにはどうすればいいですか?では、簡単に一言で解決できます.
QLineEdit[echoMode="2"] { lineedit-password-character: 9679;}
では、この言葉はどこに置けばいいのでしょうか.パスワード入力ボックスにsetStyleSheet(QString)を直接呼び出したり、パラメータを上の文(文字列形式)に変えたり、designerに直接走ってstylesheetを変更したり、親コントロールを変更したりすることができます.例えば、フォームにこのstylesheetをロードさせた後、フォーム全体のQLineEditの表示が黒球になります~~
極めて速く続けて気に入って、テーマを交換するのはstylesheetの技巧を使って、setStyleSheetのパラメータはファイルの中から動態的に参加することができるため、私も各種のテーマをそれぞれqssファイル(実はどんな接尾辞でもいい、文法はqssと呼ばれています)に書くことができて、例えば、私の連続して時間バーを見るのは実際には普通の進捗バー(QtrogressBar)です.では、なぜインタフェースでは形状以外は進捗バーに似ていないのでしょうか.簡単:
極速連視のインタフェースの特徴:
1.交換テーマのサポート
2.画面を全て切り替えることができ、基本的にダイアログなどを使わずにメッセージを提示する
3.使用するコントロール(上に移動して音を出すボタン、連続して独立した論理機能を持つLabelなど)はuiファイルに直接統合されています.
Qtでは、QSSという興味深い空間スタイルを変える方法が提供されています.かなりの場合、コントロールスタイルをあまり複雑な方法で交換する必要はありません.CSSのような簡単な言語を使用すればコントロールスタイルを規定することができます.これについてはQt以前に持参したexampleを参照することができます.qt/examples/widgets/,styleとstylesheetの2つを参照することができます.例えば、Qtを使ってパスワードを球形に表示するにはどうすればいいですか?では、簡単に一言で解決できます.
QLineEdit[echoMode="2"] { lineedit-password-character: 9679;}
では、この言葉はどこに置けばいいのでしょうか.パスワード入力ボックスにsetStyleSheet(QString)を直接呼び出したり、パラメータを上の文(文字列形式)に変えたり、designerに直接走ってstylesheetを変更したり、親コントロールを変更したりすることができます.例えば、フォームにこのstylesheetをロードさせた後、フォーム全体のQLineEditの表示が黒球になります~~
極めて速く続けて気に入って、テーマを交換するのはstylesheetの技巧を使って、setStyleSheetのパラメータはファイルの中から動態的に参加することができるため、私も各種のテーマをそれぞれqssファイル(実はどんな接尾辞でもいい、文法はqssと呼ばれています)に書くことができて、例えば、私の連続して時間バーを見るのは実際には普通の進捗バー(QtrogressBar)です.では、なぜインタフェースでは形状以外は進捗バーに似ていないのでしょうか.簡単:
QProgressBar {
background-color:palegoldenrod;
text-align: center;
border: 2px solid grey;
border-radius: 5px;
}
QProgressBar::chunk {
background-color: goldenrod;
width: 20px;
}
,QProgressBar ( ), , 。
QSS
QSS , 。 :
QToolButton{…} /* QToolButton */
QToolButton::hover{ …} /* QToolButton */
QToolButton#myButton{ …} /* myButton QToolButton */
*{} /* */
, , :
MyButton,QComboBox{
border-style: outset;
border-width: 2px;
border-radius: 10px;
border-color: goldenrod;
background-color:goldenrod;
font: 16px;
color: beige;
min-width: 1em;
padding: 6px;
}
MyButton{
font:16px " ";
}
MyButton:hover{
border-left-width: 4px;
border-top-width: 4px;
border-right-width: 6px;
border-bottom-width: 6px;
border-radius: 10px;
color: beige;
font: bold 17px;
min-width: 1em;
padding: 6px;
}
MyButton:pressed{
border-right-width: 4px;
border-bottom-width: 4px;
border-radius: 10px;
color: beige;
font: bold 14px;
min-width: 1em;
padding: 6px;
}
, Qt Assistant stylesheet , , , 。