GTK+3에 CSS 적용

3584 단어 GTK+3CSSC++
미안합니다.
GTK 버튼을 원형으로 만들려면 상자에 테두리 등을 덧대고, 모양을 바꾸려면 CSS를 사용합니다.
CSS는 웹 개발 때와 다르지 않습니다.
다음은 CSS 및 코드에서 CSS를 읽는 프로세스입니다.
test.css
// 特定のウィジェットに適用するとき.
GtkLabel{
    color:red;
}

// 特定のウィジェットの特定の状態の時
// 今回はトグルボタンが押されている時
GtkToggleButton:checked{
    background-image:none;
    background-color:red;
}

// ウィジェットにクラスを指定した場合はクラス名で指定できる.
.button_a{
    color:white;
}

.button_b{
    border:2px solid #000000;
    border-radius:10px;
    font-size:15px;
}
reader.cpp
void LoadCss(){
    // CSS読み込む際に必要です.
    GtkCssProvider* provider = gtk_css_provider_new();
    GError* error;

    // CSSファイルの読み込み.
    gtk_css_provider_load_from_path(provider, ここにファイルパスを記述, &error);

    if( error != NULL ){
        // 読み込み失敗.
        return;
    }

    // 読み込んだCSSの適用
    gtk_style_context_add_provider_for_screen(gdk_screen_get_default(), GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_USER);
}
CSS를 사용할 때는 다음과 같이 보입니다(버튼만).
왼쪽은 ".button a"오른쪽은 ".button b"입니다.

이렇게 하면 부품의 외관을 바꿀 수 있다(흰색이 아니다).

좋은 웹페이지 즐겨찾기