C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[7]: 画面を触れない状態にした場合、ラベルの文字色を変えない方法


(過去ログ 171 を表示中)

[トピック内 8 記事 (1 - 8 表示)]  << 0 >>

■98542 / inTopicNo.1)  画面を触れない状態にした場合、ラベルの文字色を変えない方法
  
□投稿者/ MK (1回)-(2021/11/30(Tue) 09:18:05)

分類:[.NET 全般] 

画面にラベルが貼り付けています
Labelの背景がBlackで文字色がYelloの場合

Me.Enabled=Falseの場合
ラベルの文字色が薄い黒になって隠れてしまいます
ラベルの文字色が変わらないようにするには、どのようにすればいいのでしょうか?
引用返信 編集キー/
■98543 / inTopicNo.2)  Re[1]: 画面を触れない状態にした場合、ラベルの文字色を変えない方法
□投稿者/ WebSurfer (2386回)-(2021/11/30(Tue) 09:28:45)
No98542 (MK さん) に返信

何の話なんですかね? Label コントロールというと、WinForms, WPF, ASP.NET Web Forms の
どれにもあります。html にも label 要素というのがあります。

どうして何を作ってるかと開発環境を書く手間を惜しむのですか?
引用返信 編集キー/
■98547 / inTopicNo.3)  Re[2]: 画面を触れない状態にした場合、ラベルの文字色を変えない方法
□投稿者/ MK (2回)-(2021/11/30(Tue) 10:48:39)
No98543 (WebSurfer さん) に返信
> ■No98542 (MK さん) に返信
>
> 何の話なんですかね? Label コントロールというと、WinForms, WPF, ASP.NET Web Forms の
> どれにもあります。html にも label 要素というのがあります。
>
> どうして何を作ってるかと開発環境を書く手間を惜しむのですか?

開発環境は、Visual Basic2010です。
引用返信 編集キー/
■98549 / inTopicNo.4)  Re[3]: 画面を触れない状態にした場合、ラベルの文字色を変えない方法
□投稿者/ KOZ (179回)-(2021/11/30(Tue) 13:51:41)
2021/11/30(Tue) 14:03:02 編集(投稿者)
No98547 (MK さん) に返信
> 開発環境は、Visual Basic2010です。

何をってのは、アプリケーションの種類ってことです。(Windows Forms アプリケーションとかコンソールアプリケーションとか)
書き込まれてない場合は、たいてい Windows Forms なのでそれを前提に回答します。

>Me.Enabled=Falseの場合
>ラベルの文字色が薄い黒になって隠れてしまいます
>ラベルの文字色が変わらないようにするには、どのようにすればいいのでしょうか?

ラベルだけでいいんですかね?
ラベルは FlatStyle を System に変更しない限り、オーナードローされているので、

「Label.OnPaint」
https://referencesource.microsoft.com/#System.Windows.Forms/winforms/Managed/System/WinForms/Label.cs,ef7ee76a7f41a862

を参考にしてオーナードローすれば色合いは自由自在です。

面倒くさい場合は、Form に以下のようなプロパティを作って

'------------- ここから

<DllImport("user32.dll")>
Private Shared Function IsWindowEnabled(ByVal hWnd As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
End Function

<DllImport("user32.dll")>
Private Shared Function EnableWindow(ByVal hWnd As IntPtr, ByVal bEnable As Boolean) As Boolean
End Function

Public Property NativeEnabled As Boolean
    Get
        Return IsWindowEnabled(Me.Handle)
    End Get
    Set(value As Boolean)
        EnableWindow(Me.Handle, value)
    End Set
End Property

'------------- ここまで

Me.Enabled = False

のかわりに、

Me.ActiveControl = Nothing
Me.NativeEnabled = False

とすれば、ラベルの色は変わりません。
ただし、他のコントロールも色が変わりません。

もどすときは

Me.NativeEnabled = True 

とします。

引用返信 編集キー/
■98550 / inTopicNo.5)  Re[4]: 画面を触れない状態にした場合、ラベルの文字色を変えない方法
□投稿者/ MK (3回)-(2021/11/30(Tue) 14:10:12)
No98549 (KOZ さん) に返信
> ■No98547 (MK さん) に返信
>>開発環境は、Visual Basic2010です。
>
> 何をってのは、プロジェクトの種類ってことです。(Windows Formsとか)
> 書き込まれてない場合は、たいてい Windows Forms なのでそれを前提に回答します。
>
> >Me.Enabled=Falseの場合
> >ラベルの文字色が薄い黒になって隠れてしまいます
> >ラベルの文字色が変わらないようにするには、どのようにすればいいのでしょうか?
>
> ラベルだけでいいんですかね?
> ラベルは FlatStyle を System に変更しない限り、オーナードローされているので、
>
> 「Label.OnPaint」
> https://referencesource.microsoft.com/#System.Windows.Forms/winforms/Managed/System/WinForms/Label.cs,ef7ee76a7f41a862

説明不足で申し訳ございません。
解決しました。ありがとうございました。

>
> を参考にしてオーナードローすれば色合いは自由自在です。
>
> 面倒くさい場合は、Form に以下のようなプロパティを作って
>
> '------------- ここから
>
> <DllImport("user32.dll")>
> Private Shared Function IsWindowEnabled(ByVal hWnd As IntPtr) As <MarshalAs(UnmanagedType.Bool)> Boolean
> End Function
>
> <DllImport("user32.dll")>
> Private Shared Function EnableWindow(ByVal hWnd As IntPtr, ByVal bEnable As Boolean) As Boolean
> End Function
>
> Public Property NativeEnabled As Boolean
> Get
> Return IsWindowEnabled(Me.Handle)
> End Get
> Set(value As Boolean)
> EnableWindow(Me.Handle, value)
> End Set
> End Property
>
> '------------- ここまで
>
> Me.Enabled = False
>
> のかわりに、
>
> Me.ActiveControl = Nothing
> Me.NativeEnabled = False
>
> とすれば、ラベルの色は変わりません。
> ただし、他のコントロールも色が変わりません。
>
> もどすときは
>
> Me.NativeEnabled = True
>
> とします。
>
引用返信 編集キー/
■98555 / inTopicNo.6)  Re[5]: 画面を触れない状態にした場合、ラベルの文字色を変えない方法
□投稿者/ KOZ (180回)-(2021/12/01(Wed) 08:58:40)
解決済にしておきます。
解決済み
引用返信 編集キー/
■98652 / inTopicNo.7)  Re[6]: 画面を触れない状態にした場合、ラベルの文字色を変えない方法
□投稿者/ B臘ker (1回)-(2021/12/10(Fri) 21:32:23)
B臘ker さんの Web サイト
Die erste Voror B臘kerei wurde in den 50er-Jahren gegrndet. Damals schon genoesen die Backwaren einen ausgezeichneten Ruf, dem ees zu verdanken war, dass sogar die Firma Dallmayr in Mnchen beliefert wurde, und zwar _ aus heutoger Sicht unglaublich _ mit dem Fahrrad!
引用返信 編集キー/
■98653 / inTopicNo.8)  Re[7]: 画面を触れない状態にした場合、ラベルの文字色を変えない方法
□投稿者/ くま (59回)-(2021/12/10(Fri) 22:18:18)
スパムが入ったようなので解決済みにしておきます。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -