タイトル | : Re^2: BackColorの変換方法は |
記事No | : 4452 |
投稿日 | : 2006/10/25(Wed) 14:40 |
投稿者 | : 中高年ぼろブラマー |
ご回答ありがとうございます。 > > 次にFormを起動したときは、iniファイルを読み込んでLabel1のBackColorを変更します。 > 背景色の保存であれば、わざわざ面倒な ini ファイルを使うよりも、 > 標準的な Properties.Settings などを使った方が楽なのでは。 iniファイルには、BackColorのほかにファイル名だとかエクセルのマクロ名だとか、表示するメッセージなども書き込んでいるので、Properties.Settingsは今後の課題1とします。
> > このLabel1に標準以外の色が付いている場合処理が終わっていると言う意味です。 > BackColor はアンビエントなので、『標準以外の色が付いている場合』には > Friend Overridable Function ShouldSerializeBackColor() As Boolean > のメソッドが True を返すようになっています。 上記メゾットも今後の課題2とします。
> > 「型 'String'の値を'System.Drawing.Color'に変換できません。」 > "Red"などの色名から Color への変換を行いたいのであれば、Color.FromName を使えば OK です。 今回はこのColor.FromNameに集中したいと思います。 MSDNに Public Shared Function FromName( _ ByVal name As String _ ) As Color とありました。これを利用すれば良さそう。 http://hanatyan.sakura.ne.jp/dotnet/sys05.htm を参考に取得と変更は以下のように宣言していますが、いろいろ少ない知識でいじくり倒しましたが、わかりません。 すみませんが、どこをどうすればよいのか教えていただけないでしょうか。
'指定のINIファイルから文字列を取得する <DllImport("KERNEL32.DLL", CharSet:=CharSet.Auto)> _ Public Shared Function GetPrivateProfileString( _ ByVal lpAppName As String, _ ByVal lpKeyName As String, _ ByVal lpDefault As String, _ ByVal lpReturnedString As System.Text.StringBuilder, _ ByVal nSize As Integer, _ ByVal lpFileName As String) As Integer End Function '指定のINIファイルの指定のキーの文字列を変更する <DllImport("KERNEL32.DLL")> _ Public Shared Function WritePrivateProfileString( _ ByVal lpAppName As String, _ ByVal lpKeyName As String, _ ByVal lpString As String, _ ByVal lpFileName As String) As Integer End Function
|