使い方

  1. とりあえず使ってみよう
  2. 引数の書式
  3. スタイル宣言

スタイル宣言

StartButtonerでのCSSモデル

ここでのスタイル宣言とは、W3C Cascading Style Sheets, Level2(以下CSS2)でのdeclarationを意味します。 通常これらはHTMLやXML文書の装飾(スタイル)に用いられますが、 StartButtonerは、このCSSを特定のWindows上のオブジェクトに関連づけて装飾処理を行います。

W3C CSS2によると、CSS2の構文は以下のようになっています。

stylesheet  : [ CDO | CDC | S | statement ]*;
statement   : ruleset | at-rule;
at-rule     : ATKEYWORD S* any* [ block | ';' S* ];
block       : '{' S* [ any | block | ATKEYWORD S* | ';' ]* '}' S*;
ruleset     : selector? '{' S* declaration? [ ';' S* declaration? ]* '}' S*;
selector    : any+;
declaration : property ':' S* value;
property    : IDENT S*;
value       : [ any | block | ATKEYWORD S* ]+;
any         : [ IDENT | NUMBER | PERCENTAGE | DIMENSION | STRING
              | DELIM | URI | HASH | UNICODE-RANGE | INCLUDES
              | FUNCTION | DASHMATCH | '(' any* ')' | '[' any* ']' ] S*;

なお、StartButtonerではvalueblock 中のblock はサポートしていません。

anyは多くの種類の字句を含んでいますが、ここではStartButtonerで意味を持つ字句を説明します。

字句 説明
NUMBER

記述に用いる基は10進数です。単位を付けることもできます。 色形式の場合は先頭にシャープ('#')を付け、6桁RGB値(各2桁)で記述します。

314 /* 標準形式 */ 100ms /* 短い時間 */ #FFFFFF /* 色形式 */ rgb(255, 255, 255) /* 色形式 その2 */

また、大文字・小文字は区別しません。

STRING

二重引用符('"')で囲み、その内容には基本的にどのような文字も利用できますが、 改行・タブ・スラッシュ・二重引用符・バックスラッシュは利用できません。 改行・タブは無視されます。 その場合には以下のエスケープ記号を用いてください。

文字 エスケープ記号
改行 \n
タブ \t
ビープ音 \a
二重引用符 \"
バックスラッシュ \\

"今日の天気は\n\t晴れ後くもり、時々あられ、所によっては砂あらしでしょう。" /* 72バイト */

また、長さは255バイトまでです。

URI

一般的なファイルパスで、設定ファイルからの相対パスも指定できます。プロトコルは使用できません。 文字列型の値を"url("')'で囲んだ形式です。 ただしディレクトリの区切りは'/'を使います。

url("c:/Program Files/strBtn/button.bmp")

また、長さは255バイトまでです。

IDENT 指定された文字列です。

これらがどのように指定されるかは、次々節「一覧」を参照してください。

クラス

クラスはrulesetをさらに分類するための仕組みです。 クラスを導入することにより、複数のrulesetを1つにまとめることが可能です。 クラスを導入するためのクラス句は以下のように定義されます。

class : '.' IDENT

処理時には処理対象とするrulesetをクラスによって選択することができます(処理クラスの設定)。 また、クラス句を記述しないrulesetは無名クラスに分類されます。

カスケーディング処理

[Made with CSS]

宣言されたruleset の優先順位は後に宣言されたruleset ほど高くなります。 また、@import によるruleset の導入に際しては @import よりも先に導入されたruleset よりも優先されますが、 その後に宣言されているruleset の方がより優先されます。(ただし@import で最重要宣言、!important が指定されている場合にはどのruleset よりも優先されます) このことは同じselector に対して複数、スタイル宣言している時に重要となります。

一覧

  1. スタートボタンの表装の変更
  2. デスクトップのアイコンテキスト色や壁紙について
  3. スタートメニューの表装の変更
  4. スタートボタンのツールチップを変更
  5. タスクバーの形状の設定等
  6. 指定されたウインドウの影、半透明化
  7. デスクトップアイコンの位置の復元・保存
  8. 設定ファイルの読み込み
  9. 処理クラスの設定
  10. 処理の一時中断
  11. 外部コマンドの実行
  12. (コメントの記述)

スタイル宣言の定義部分の [ 右] は置き換えられることを意味し、 左側の句(左)は置き換えるものの型を示し、 右側の句(右)はその値につけられた名前です。 右側の句(右)は説明にために付けられたものです。

コメントの記述

/* ... */

コメントは処理されません。また、コメントを入れ子にすることは出来ません。


スタイル宣言の対応プラットホーム

すべてのスタイル宣言がすべてのプラットホームにおいて動作するわけではありません。 以下に、各スタイル宣言の対応しているプラットホームを示します。

スタイル宣言 プラットホーム
win9x winNT
機能 selector 3.x 95 98 Me 3.x 4.x 2k XP
スタートボタンの表装の変更 button × ×
デスクトップのアイコンテキスト色や壁紙について desktop × ×
スタートメニューの表装の変更 startmenu × × ×
スタートボタンのツールチップを変更 tooltip × ×
タスクバーの形状の設定等 taskbar × ×
指定されたウインドウの影、半透明化 windows × × × × × ×
デスクトップアイコンの位置の復元・保存 @icon × × ?
設定ファイルの読み込み @import × ×
クラス値の設定 @class × ×
処理の一時中断 @sleep × ×
外部コマンドの実行 @execute × ×
コメントの記述 × ×