VBA必须通过调用WN32 API来实现INI文件的读写,把控件属性及其值在程序退出时写入INI文件,在程序加载时读取INI文件并设置控件属性。
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
'INI文件写
'参数:
'strSection:节名称
'strItem:项名称
'strValue:项的值
'strIniFile:INI文件
Private Function WriteIniFile(strSection,strItem,strValue,strIniFile) as Long
Dim lngWriteOk As Long
lngWriteOk = WritePrivateProfileString(strSection,strItem,strValue,strIniFile)
End Sub
'INI文件读
'参数:
'strSection:节名称
'strItem:项名称
'strDefValue:项的默认值
'strIniFile:INI文件
Private Function strReadIniFile(strSection,strItem,strDefValue,strIniFile) as String
Dim lngReadOk As Long
Dim strValue As String
Dim strReadValue As String
strValue=strDefValue
tmpReadValue = String(255, 0)
lngReadOk = GetPrivateProfileString(strSection, strItem, strDefValue, strReadValue, 256, strIniFile)
If lngReadOk then
strValue=trim(strReadValue)
end if
strReadIniFile=strValue
End Sub
设置文本的颜色需要使用下面函数
virtual COLORREF SetTextColor( COLORREF crColor );//设置绘制的文本颜色
你可以先获取 从 dlgFontDlg 中返回字体的颜色,然后调用上述的函数来设置文本颜色
没那么麻烦,我能说MFC自带的MFC Button Control控件等按钮,自己就可以修改颜色,还能添加,设置字体颜色等。这些控件就在工具箱的下面,前面带MFC开头的那些。你先复制原来按钮的ID,再删掉原来的按钮,拖入MFC按钮,再把这个按钮的ID改为原来按钮的ID,就能提换掉原来的按钮,然后给这个按钮添加变量。在需要改颜色的地方调用m_btnSetFaceColor(RGB(0, 255, 0));这样的就行了。其他的功能百度或MSDN MFCButton。
这里也有一些>
在一个Form中判断控件的类别然后再来改变颜色
with Form1 do
begin
for i:=0 to selfComponentCount-1 do
begin
if selfComponents[i] is TEdit then
TEdit(selfComponents[i])Color:=Red;//$AA0012221
if selfComponents[i] is TCombobox then
TCombobox(selfComponents[i])Color:=Green;
end;
end;
QT动态改变控件背景颜色:用QPalette得到一个颜色m_penColor,如何让一个pushbutton动态的显示m_penColor的颜色,color->setStyleSheet("background-color:XXXX;"),这个只能静态地改变控件的颜色,如何利用m_penColor动态改变按键颜色
var A:TColor;
begin
a:=CanvasPixels[100,100];
ShowMessage(ColorToString(a)); //显示颜色名称
//ShowMessage(IntToHex(ColorToRGB(a),8)); //显示颜色的十六进制值
end;
form1中
添加一个要改变背景颜色的控件
比如panel1,在属性对话框中设置该控件的modifiers属性值为public。
再添加一个按钮,在该按钮的单击事件
里边写
form2
f
=
new
form2();
fowner
=
this;
fshowdialog();
---------------------------------------------------------------------------
form2中
添加一个按钮,在该按钮的单击事件
里边写
(thisowner
as
form1)panel1backcolor
=
colorred;
以上就是关于Vba能够通过读取ini文件控制控件的属性(大小、位置、字体、颜色、样式……)吗代码怎么写全部的内容,包括:Vba能够通过读取ini文件控制控件的属性(大小、位置、字体、颜色、样式……)吗代码怎么写、VC中,如何通过调用字体通用对话框来改变一个控件的文本的颜色、MFC按钮控件的颜色设置等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)