下記のコードでdefine(Bの場合)を使用したものは旨く働きません。
下記のAの設定では、バックグランドカラーは緑になり、OKです。
しかし、Bの設定では、バックグランドカラーは黒色系統になり、NGです。
Q1)『#define BKG_color #00cc00』を使用して、バックグランドカラ(緑)
の設定は可能ですか?
注)#の処理に問題がありますか?
#define BKG_color #00cc00
//setStyleSheet("QWidget{background:#00cc00;}"); <ーーA
setStyleSheet("QWidget{background:BKG_color;}"); <−−B
defineの使用方法をお教えください。
お手数ですが、宜しくお願いします。
No.1ベストアンサー
- 回答日時:
#defineはトークンを置き換えます。
setStyleSheet("QWidget{background:BKG_color;}");
に出てくるBKG_colorは文字列の一部でありトークンになっていないので#defineによる置き換えの対象外です。
文字列を分解してBKG_colorを文字列の外に出してプリプロセッサからトークンとして認識できるようにし、あとで文字列を結合するのが妥当かと。
#define BKG_color "#00cc00"
setStyleSheet("QWidget{background:" BKG_color ";}");
でどうかな。
毎度、お世話になります。
本を読め、勉強しろとか無意味な回答が多い中で
価値有る回答有難う御座いました。
これらの回答をする人は、説明表現力が不足しているかも
知れませんね?
No.3
- 回答日時:
C++の基本をきっちり学んでから次のステップへ進むことをお勧めします。
あるいは、質問する前に、C++の参考書、解説サイト等を確認することをお勧めします。
例えば
http://ylb.jp/2006b/proc/cpp/
には
> 文字列定数(文字列リテラル)の中では展開は起きない。
などと、マクロが展開される条件が解説されています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) Arduino UNO のC言語 2 2023/04/18 19:42
- Visual Basic(VBA) エクセルVBA ダブルクリックしたら色反転を指定したセルのみにしたい 2 2022/04/06 12:52
- C言語・C++・C# C言語初心者です、、、お助けください 2 2023/03/14 20:08
- HTML・CSS HTMLで特定の文字だけ色を変えたいのですが、指定した色と違う色が反映してしまいます。 下記、「前」 5 2023/06/27 12:08
- HTML・CSS CSSでサイトの背景に画像を組み込みたいのですが反映されません 2 2022/11/22 16:21
- C言語・C++・C# C言語:数値の桁数指定についての質問です。 8 2022/05/26 23:53
- オープンソース cssで中央寄せ 1 2023/05/19 06:25
- iPad iPad miniの初期設定 2 2022/05/28 10:09
- Windows 10 windowsの回復ドライブや復元ポイントを使用した場合の戻る位置を教えてください。 5 2023/08/19 14:52
- HTML・CSS (Javascript)印刷するファイルに応じて印刷プレビュー画面で用紙を自動的に切り替えたい!! 2 2022/04/11 12:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでアルファベットか数...
-
EXCELで=より左の文字を一括で...
-
Excelで指数表現しないようにす...
-
文字列からタブコードを取り除...
-
VBAでの Replace関数で、ワイル...
-
エクセルで文字列の最大値を抽...
-
VBA2005 16進を2桁で表示したい。
-
エクセル 数値データを桁をそ...
-
MS SQLServer のSQLで文字列の...
-
Left関数とRight関数を合わせた...
-
C#で年月を比較する
-
NULLの定義について
-
UNIX:縦一列のファイルを横一行...
-
テキストエディタで複数行にわ...
-
変数内に入った文字列の結合 UWSC
-
【Excel VBA】複数ある特定の文...
-
CStringの文字列検索&抜き出し...
-
エクセルでセル内の文字列の最...
-
VBの「As String * 128」とは?
-
Excelで3E8を3.00E+8にしない方...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでアルファベットか数...
-
EXCELで=より左の文字を一括で...
-
VBAでの Replace関数で、ワイル...
-
Excelで指数表現しないようにす...
-
文字列からタブコードを取り除...
-
Excelで3E8を3.00E+8にしない方...
-
エクセルで文字列をtxtファイル...
-
エクセルで文字列の最大値を抽...
-
VBA2005 16進を2桁で表示したい。
-
同一セル内に関数と文字列を同...
-
Left関数とRight関数を合わせた...
-
VBの「As String * 128」とは?
-
Msgboxの×が押されたとき
-
【Excel VBA】複数ある特定の文...
-
MS SQLServer のSQLで文字列の...
-
アクセスで特定の数字以外(複...
-
エクセルでセル内の文字列の最...
-
ORCLEでの小数の表示方法の変更...
-
変数内に入った文字列の結合 UWSC
-
エクセル 数値データを桁をそ...
おすすめ情報