- PR -

TabControl のページタイトル部の BackColor を変更したい。

投稿者投稿内容
だんじり
大ベテラン
会議室デビュー日: 2007/08/10
投稿数: 155
お住まい・勤務地: 神奈川県
投稿日時: 2007-10-27 10:51
Visual Basic 2005 Express Edition でWindowsアプリケーションを開発しています。
TabControl についてお尋ねします。

TabControlで、ページタイトル部の BackColorは白色で味気がなく、変更したいのですが
それらしいプロパティが見つかりません。このバックカラーは変更できないのでしょうか。
もし変えられないなら、他のページと区分するためにタイトル文字の文字色だけでも変更
したいのですが、よろしくご指導下さい。


[ メッセージ編集済み 編集者: だんじり 編集日時 2007-10-27 10:51 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-10-27 11:03
引用:

だんじりさんの書き込み (2007-10-27 10:51) より:

TabControlで、ページタイトル部の BackColorは白色で味気がなく、変更したいのですが
それらしいプロパティが見つかりません。このバックカラーは変更できないのでしょうか。


"ページ タイトル部" とはなんでしょうか? TabControl の TabPage の見出しになっているタブの部分そのもののことでしょうか。 であれば、この会議室で 「TabControl BackColor」 などで検索すると良いでしょう。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
だんじり
大ベテラン
会議室デビュー日: 2007/08/10
投稿数: 155
お住まい・勤務地: 神奈川県
投稿日時: 2007-10-27 11:07
じゃんぬねっとさん、ありがとうございました

過去ログを見ないですみません。

URLも紹介されていましたので勉強します。
http://smdn.invisiblefulmoon.net/ikimasshoy/vbdotnet/ownerdraw.html

このサイトに書かれた「OwnerDrawプロパティ」とはどのオブジェクト
を指しているのでしょうか。(じゃんぬねっとさん。もしご覧になったら教えてください)


[ メッセージ編集済み 編集者: だんじり 編集日時 2007-10-27 11:21 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-10-27 11:44
引用:

だんじりさんの書き込み (2007-10-27 11:07) より:

過去ログを見ないですみません。

URLも紹介されていましたので勉強します。
http://smdn.invisiblefulmoon.net/ikimasshoy/vbdotnet/ownerdraw.html

このサイトに書かれた「OwnerDrawプロパティ」とはどのオブジェクト
を指しているのでしょうか。(じゃんぬねっとさん。もしご覧になったら教えてください)


惜しいですね。 DrawMode プロパティになります。 オーナードローというところは正解です。 簡単にいえば自分ですべて描画するということですね。 なので背景色以外の文字も自分で描画することになります。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
だんじり
大ベテラン
会議室デビュー日: 2007/08/10
投稿数: 155
お住まい・勤務地: 神奈川県
投稿日時: 2007-10-27 12:33
じゃんぬねっとさん、いつもすみません。

TabControlにもDrawMode プロパティがありました。ありがとうございました。
ところでオーナードローの処理は自分ですべて描画することになり、大変難しそうで
またサンプルコードもCが多く、BisualBasicを使っているものには難解ですが
がんばってみます。

以下私が見ている関連サイトを掲載しておきます。
http://home.att.ne.jp/banana/akatsuki/doc/atlwtl/atlwtl11-06/index.html
http://www5b.biglobe.ne.jp/~kouta_y/c/c05.html
http://www.kab-studio.biz/Programing/Codian/MFCTips/08.html
http://athomejp.com/goldfish/mfc/window/ownermenu.asp

[ メッセージ編集済み 編集者: だんじり 編集日時 2007-10-27 14:57 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-10-28 16:24
はい、頑張ってください。こちらの記事も参考になると思います。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
蒋 いつ峰
会議室デビュー日: 2005/10/08
投稿数: 11
投稿日時: 2007-10-28 18:46
引用:

じゃんぬねっとさんの書き込み (2007-10-28 16:24) より:
はい、頑張ってください。こちらの記事も参考になると思います。




僕もこのページを参考して作りました。また、最後のところ、リソースの開放がいると思います。
コード:
    'リソース開放
    foreBrush.Dispose()
    backBrush.Dispose()
    e.Graphics.Dispose()


_________________
ブログ
http://uprushworld.blogspot.com/

助君 -- あなた専用のカスタマイズ ウェブナビ
http://www.sukekun.com/

A website and community for programmer
http://uprush.net
だんじり
大ベテラン
会議室デビュー日: 2007/08/10
投稿数: 155
お住まい・勤務地: 神奈川県
投稿日時: 2007-10-30 09:46
じゃんぬねっとさん、ありがとうございます。
教えていただいたサイトを早速テストしていますが、次の2行がエラー(TabPagesは
DataGridView1.TabControlのメンバーではありません)になります。
Dim tab As TabControl = CType(sender, TabControl)'--対象のTabControlを取得
Dim txt As String = tab.TabPages(e.Index).Text'--タブページのテキストを取得
やむなく次のように変更すると正常に動作しますが全てのTab.Textが「あああ」と
なってしまいます。
→ Dim txt As String = "あああ"
もう少しがんばってみます。


uprushさん、ご指導ありがとうございました。
教えていただいたサイトをそのままテストしています。まだうまくいっていませんが
もう少しがんばります。お礼の送信が遅れて申し訳ありません。
リソースの開放はコードの最後に挿入すればよいのでしょうか。


スキルアップ/キャリアアップ(JOB@IT)