2011-01-05 29 views
2

MS Access 2007フォームデザインビューのプロパティシートでは、コードで使用するために定数を見つけることができない色オプションが公開されています。具体的には、「テキストダーク」、「テキストライト」、 「背景暗いヘッダ」、および「背景光ヘッダ」を含む。これらの定数はあらかじめ定義されていますか?私は、オブジェクトブラウザーやヘルプに表示されません。それに失敗した場合、誰かがRGBの16進数値を知っていますか?Access 2007での色定数

答えて

1

これらはWindowsのシステム設定から来る可能性があり、すべてのコンピュータの同じRGB値に対応していない可能性があります。

この

あなたがまた戻るColorプロパティで見ることができる(そのことについては、または、任意の色のプロパティ)20個の追加オプションのリストを見つけた後。これらは、代替行、バックグラウンドフォーム、バックグラウンドライトヘッダ、バックグラウンドダークヘッダ、境界線/グリッド線、テキストブラック、テキスト記述、テキストライト、テキストダーク、ハイライト、アクセステーマ1、アクセステーマ2、アクセスまでテーマ10:アクセスオプションで選択した配色の濃淡です。青色またはシルバーのテーマでは青色、黒色ではグレーと黒の色合い、ハイライトではすべてのテーマでオレンジの色合いがあります。

here

私は今、それがアクセスするローカルだと思っています。 これは、単一のRGB値ではできないことかもしれません。

+0

.... – RolandTumble

+0

"Windows標準"、 "Windows Aero"など – Fionnuala

+1

これらは、私が使用したい色です*ので、ユーザーのテーマ選択と共に追跡するようになりますが、コード内で動的にやりたいのですが、ヘッダーカラーを使用して、ユーザーがフォーム上のアイテムを変更できるかどうかを示します(個々のアイテムを灰色で判読不能にすることはできません)。実行時にそれらを使用する方法を教えてくれないので、BOLエントリを見つけてくれてありがとう - それは完全に質問に答えるわけではありませんが、これまでに見つけた以上のものです。 – RolandTumble

1

私は答えを見つけました。私はすでに設計時に設定したい色のフォームを持っているので、ロード中にブレークポイントを設定し、Debug.Printを使って値を見つけました。私はちょっと遊んだ後、この答えを編集して、私がどのようなものが混ざっていないかを確認します。

私が解決策につながった方向に考えさせてくれたので、その間、私はベスの答えを受け入れるつもりです。

編集ここ

私は文脈で、元々について尋ね4の値をされています

Public Sub SetHeader(frm As Form) 
On Error GoTo Error_Handler 

'Access-specific Theme colors 
Const TextLight  As Long = -2147483616 
Const TextDark  As Long = -2147483615 
Const BackLight  As Long = -2147483612 
Const BackDark  As Long = -2147483611 


    With frm 
     If gblnAuthorized Then 
      .FormHeader.BackColor = BackLight 
      !Auto_Title0.ForeColor = TextDark 
     Else 
      .FormHeader.BackColor = BackDark 
      !Auto_Title0.ForeColor = TextLight 
     End If 
    End With 

Exit_Procedure: 
    Exit Sub 

Error_Handler: 
    DisplayUnexpectedError Err.Number, Err.Description 
    Resume Exit_Procedure 
    Resume 
End Sub 

編集2

ただ、偶然、私は簡単に見つけこれらの値を見つける方法。 VB Editorに入り、フォームのコードを開きます。 Propetiesウィンドウの上部にあるドロップダウンでコントロールを選択し、そこからBackColor(または何でも)を読みます。これはAccesデザイン環境で使用されている名前ではなく、上記のコードで使用したのと同じ10進形式です。 編集3フォームが動作するには、メインのアクセス環境のデザインビューまたはレイアウトビューでフォームを開いておく必要があります。

+1

ENUMの作成を検討すると、ENUMを使用して関数/ subsのパラメータを定義できます。 –

+0

Enumについての良い点。現在の使用法は、このSubがグローバルプロシージャーのモジュール内に存在し、データ入力コントロールをロックまたはロック解除するSubとともに、ほとんどすべてのフォームのForm_Loadから呼び出されることです。私は他の場所でこれらの値を使用することは想像もしませんが、準備する方が良いです。 – RolandTumble

3

これはMicrosoftによって完全に文書化されているわけではないので、Googleでを検索している他のすべてのユーザーには遅れて回答してみます。アクセス色定数 "Background Light Header"

私が見た最良の情報はChris Ward's answer to 'Access system color constants' on the MSDN AccessDev forumで、2013年1月1日に投稿されました。

私はフォーマットを変更したこと列挙への情報:これらは数値的にエンコードされていないRGBの色をしていること

 
' Access system color constants, documented by Chris Ward on MSDN Forums, 01-Jan-2013 
' https://social.msdn.microsoft.com/Forums/en-US/ccf8b3b7-fa6b-4d05-9883-44b3642e6688/color-themes-decimal-equivelant-documented?forum=accessdev

Public Enum SysColors     acColor_Access_Theme_8 = -2147483600 ' Access Theme 8     acColor_Access_Theme_7 = -2147483601 ' Access Theme 7     acColor_Access_Theme_6 = -2147483602 ' Access Theme 6     acColor_Access_Theme_5 = -2147483603 ' Access Theme 5     acColor_Access_Theme_4 = -2147483604 ' Access Theme 4     acColor_Access_Theme_3 = -2147483605 ' Access Theme 3     acColor_Access_Theme_2 = -2147483606 ' Access Theme 2     acColor_Access_Theme_1 = -2147483607 ' Access Theme 1     acColor_Highlight = -2147483608 ' Highlight     acColor_Borders_Gridlines = -2147483609 ' Borders/Gridlines     acColor_Altenate_Row = -2147483610 ' Altenate Row     acColor_Background_Dark_Header = -2147483611 ' Background Dark Header     acColor_Background_Light_Header = -2147483612 ' Background Light Header     acColor_Background_Form = -2147483613 ' Background Form     acColor_Text_Description = -2147483614 ' Text Description     acColor_Text_Dark = -2147483615 ' Text Dark     acColor_Text_Light = -2147483616 ' Text Light     acColor_Text_Black = -2147483617 ' Text Black     acColor_System_Menu_Bar = -2147483618 ' System Menu Bar     acColor_System_Menu_Highlight = -2147483619 ' System Menu Highlight     acColor_System_Gradient_Inactive_Caption = -2147483620 ' System Gradient Inactive Caption     acColor_System_Gradient_Active_Caption = -2147483621 ' System Gradient Active Caption     acColor_System_Static_Text = -2147483622 ' System Static Text     acColor_System_Static = -2147483623 ' System Static     acColor_System_Tooltip_Background = -2147483624 ' System Tooltip Background     acColor_System_Tooltip_Text = -2147483625 ' System Tooltip Text     acColor_System_3D_Light = -2147483626 ' System 3D Light     acColor_System_3D_Shadow = -2147483627 ' System 3D Shadow     acColor_System_3D_Highlight = -2147483628 ' System 3D Highlight     acColor_System_Inactive_Caption_Light = -2147483629 ' System Inactive Caption Light     acColor_System_Button_Text = -2147483630 ' System Button Text     acColor_System_Alternate_Row = -2147483631 ' System Alternate Row     acColor_System_Button_Shadow = -2147483632 ' System Button Shadow     acColor_System_Button_Face = -2147483633 ' System Button Face     acColor_System_Highlight_Text = -2147483634 ' System Highlight Text     acColor_System_Highlight = -2147483635 ' System Highlight     acColor_System_Application_Background = -2147483636 ' System Application Background     acColor_System_Inactive_Border = -2147483637 ' System Inactive Border     acColor_System_Active_Border = -2147483638 ' System Active Border     acColor_System_Title_Bar_Text = -2147483639 ' System Title Bar Text     acColor_System_Window_Text = -2147483640 ' System Window Text     acColor_System_Menu_Text = -2147483641 ' System Menu Text     acColor_System_Window_Frame = -2147483642 ' System Window Frame     acColor_System_Window = -2147483643 ' System Window     acColor_System_Menu_Background = -2147483644 ' System Menu Background     acColor_System_Inactive_Title_Bar = -2147483645 ' System Inactive Title Bar     acColor_System_Active_Title_Bar = -2147483646 ' System Active Title Bar     acColor_System_Desktop = -2147483647 ' System Desktop     acColor_System_Scrollbar = -2147483648# ' System Scrollbar End Enum

注:彼らはRGBカラーの定義を指しシステム定数のアドレスまたは変数でありますカスタムシステムまたはアプリケーションのカラーテーマが選択された場合は変更されます

アクセシビリティ設定が必要なユーザー(高コントラストが最も一般的な例です)が、ハードコードされた色の仕様で釘付けにならないため、これは実際には良いことです。

「テキスト1、ライター50%」などの明るい色合いと暗い色合いを列挙する方法を聞かれるかもしれませんが、実際には数値定数ではありません:色の「明るい部分」と「暗い部分」デスクリプタは実際にコントロールの.BackTint.BackShadeメソッド(背景色)とフォントのFont.TextColor.TintAndShadeプロパティ(前景色)を呼び出すため、これらのメソッドをVBAから呼び出すこともできます。

しかし、背景やフォントのメソッドが多少異なる方法で動作し、矛盾があなたに追いつくため、コードを書くときにヘルプページを開くことをおすすめします。私は@Bethはあなたが光と闇のテキストを選択した色を意味だと思い、私が考えたものだが、私はどこでも私がこれまで見てきたシステム定数でそれらを見ない

0
VBA Constant    Description 

vbScrollBars    Scrollbar color 
vbDesktop     Desktop color 
vbActiveTitleBar   Color of the title bar for the active window 
vbInactiveTitleBar   Color of the title bar for the inactive window 
vbMenuBar     Menu background color 
vbWindowBackground   Window background color 
vbWindowFrame    Window frame color 
vbMenuText     Color of text on menus 
vbWindowText    Color of text in windows 
vbTitleBarText    Color of text in caption, size box, and scroll arrow 
vbActiveBorder    Border color of active window 
vbInactiveBorder   Border color of inactive window 
vbApplicationWorkspace  Background color of multiple document interface applications 
vbHighlight     Background color of items selected in a control 
vbHighlightText    Text color of items selected in a control 
vbButtonFace    Color of shading on the face of command buttons 
vbButtonShadow    Color of shading on the edge of command buttons 
vbGrayText     Grayed (disabled) text 
vbButtonText    Text color on push buttons 
vbInactiveCaptionText  Color of text in an inactive caption 
vb3DHighlight    Highlight color for 3-D display elements 
vb3DDKShadow    Darkest shadow color for 3-D display elements 
vb3DLight     Second lightest 3-D color after vb3DHighlight 
vbInfoText     Color of text in ToolTips 
vbInfoBackground   Background color of ToolTips 
関連する問題