`
wo_deqing
  • 浏览: 64188 次
文章分类
社区版块
存档分类
最新评论

在程序中动态改变static text控件的caption值

 
阅读更多
方法1,给STATIC控件取个名字叫IDC_STATICTITLE
然后在ClassWizard中设定一个控件变量给它叫m_statictitle
然后用m_statictitle.SetWindowText("你要写的字串");updata(False);

方法2,给STATIC控件取个名字叫IDC_STATICTITLE
GetDlgItem(IDC_STATICTITLE)->SetWindowText(_T("你要写的字串"));updata(False);

方法3,给STATIC控件取个名字叫IDC_STATICTITLE
然后在ClassWizard中设定一个CString变量给它叫m_statictitle
然后用m_statictitle = "你要写的字串";updata(False);

方法4:

给STATIC控件取名IDC_STATIC1,SetDlgItemText(IDC_STATIC1,_T("你要写的字符串");



在实际的应用中,可以用WM_CTLCOLOR 消息改变mfc中控件的颜色,比如现在就来改变一个static text控件的背景色和字体

1 在对话框的类中添加两个变量:

CBrush m_brush;
CFont m_font;

在OnInitDialog()函数中添加:

// TODO: 在此添加额外的初始化代码
m_font.CreatePointFont(150,"华文行楷");
m_brush.CreateSolidBrush(RGB(0,255,0));

2 添加WM_CTLCOLOR 消息响应,添加的方法为:

<wbr><wbr><wbr><wbr> 在对话框类中声明:afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) ;</wbr></wbr></wbr></wbr>

<wbr><wbr><wbr> 在消息映射中添加: ON_WM_CTLCOLOR()</wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> 如:</wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr> BEGIN_MESSAGE_MAP(CtestEnvDlg, CDialog)<br><wbr><wbr><wbr><wbr><wbr> ON_WM_CTLCOLOR()<br><wbr><wbr><wbr><wbr><wbr> //}}AFX_MSG_MAP<br><wbr><wbr><wbr><wbr><wbr> END_MESSAGE_MAP()</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

3 添加响应函数:

HBRUSH CYourDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if(m_yourStatic.m_hWnd == pWnd->m_hWnd)
{
<wbr><wbr> pDC-&gt;SetBkColor(RGB(0,255,0));<br><wbr><wbr> pDC-&gt;SelectObject(&amp;m_font);<br><wbr><wbr> return m_brush;<br> }<br> return hbr;<br> }</wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

这样就可以改变static text的颜色和字体了


分享到:
评论

相关推荐

    动态添加一个控件的事件!

    StaticText2-&gt;Caption = "控件:" + AnsiString(name) + ", 文本:" + AnsiString(text); // 更新TStaticText控件的内容 } Handled = false; // 表示消息未被处理 } ``` 3. **注册消息处理函数**:在窗体创建时...

    C#中调用OCX控件

    ### C#中调用OCX控件的详细指南 ...public static extern int MessageBox(IntPtr hWnd, string text, string caption, uint type); ``` 通过这种方式,可以灵活地利用现有的非托管代码资源,增强C#程序的功能性和性能。

    Delphi控件大全.doc

    - **StaticText** 控件:类似于`Text`,但可通过`BevelKind`, `BevelInner`, `BevelOuter` 和 `BorderStyle`属性增强外观。 - **ControlBar** 控件:用于创建自定义的控制面板,如Office工具栏。 - **TSahpe** ...

    VS控件介绍.docx

    在Visual Studio中,开发Windows应用程序时,我们常常会用到各种控件来构建用户界面。以下是一些常见的控件和相关API的详细说明: 1. **静态文本(Static Text)**:CStatic类支持的控件,用于显示固定不变的文本,如...

    DELPHI可视控件的简单描述

    - **StaticText**:窗口型控件,显示文本。与Label的主要区别在于它能接收窗口消息,适合用作加速键的容器。 3. **按钮型组件**: - **Button**:执行类按钮,触发事件。属性如Caption(按钮文本)、Cancel(ESC...

    vs08 mfc 简单计算器

    2. **添加方法**:在工具箱中选中Static Text控件,将其拖放到对话框模板上。可以通过鼠标调整其位置和大小。 3. **设置属性**:右键点击静态文本框,在弹出的菜单中选择“属性(Properties)”,在属性面板中可以修改...

    UCGUI中的BUTTON控件

    在UCGUI中,BUTTON控件是最基本也是最常用的控件之一。它主要用于触发事件或执行特定功能,如确认、取消等操作。BUTTON控件不仅能够响应用户的点击事件,还支持自定义样式和行为,以便更好地融入整个应用程序的风格...

    全国计算机3月等级考试二级VB程序设计笔试试卷及答案.pdf

    1. VB中控件属性和事件的使用:文档中提到了控件的不同属性,如MaxLength、Enabled、Visible、Width等,以及如何通过事件驱动来控制程序的运行,例如Text1控件的Text属性可以通过滚动条(HScroll)的值变化来改变。...

    vb语言程序设计考试题(六).docx

    要改变控件在窗体中的左右位置,应该修改的是**B. Left**属性。 ### 28. 文件列表框显示文件类型 - **Pattern属性**:用于设置文件列表框中显示的文件类型。 - **Path属性**:用于设置文件列表框中文件所在的路径...

    讲座三-VS2010(MFC)编程-对话框(加法计算器) (2).docx

    - 在对话框编辑器中,可以通过调整控件的Tab顺序属性来调整顺序,或者直接拖动控件来改变顺序。 8. **更新数据**: - 调用`UpdateData(TRUE)`将控件中的数据保存到相应的变量,通常在处理函数的最后调用。 - `...

    VB编程计算机考试题.pdf

    45. 列表框(ListBox)用于返回列表框中所有选项的个数,其属性ListCount只能在程序代码中调用和设置。错。列表框的ListCount属性可以在设计时和程序代码中调用和设置。 知识点:列表框的ListCount属性 46. 列表框的...

    1VB程序设计.doc

    9. 在VB程序中,对于Command1_Click事件,可以通过Label控件数组的Caption属性获取元素值并累加,最后将结果赋值给Label2的Caption属性。示例代码: ```vb Private Sub Command1_Click() Dim Sum As Integer For i...

    mfc可视化编程--学生信息管理系统.doc

    此外,还需要添加用于提示用户输入的Static Text控件。 步骤3中,我们添加了输入对话框IDD_INPUT,用于收集学生信息。这里包含了保存和取消按钮,以及用于输入学号、姓名、学院专业、性别和是否少数民族的控件。...

    上海市高等学校计算机等级考试测试卷二级VisualBasic程序设计A卷.pdf

    10. 静态变量:在VB中,静态变量(Static)在每次调用过程时保持其上一次的值,因此,如果在过程A中定义静态变量y,并在退出时其值为5,下次再进入过程A时,y的值仍然是5。 11. 变量作用域:变量可以分为局部变量...

    (完整word版)VisualBasic程序设计试题及答案2.doc

    13. 局部变量生命周期:局部变量在过程执行完毕后会被释放,除非是静态局部变量(Static),它会在过程再次调用时保持上一次的值。 14. 数据访问对象:ADO 使用 OLE DB 接口访问数据库。 15. 图片加载:加载图片到...

    VisualBasic程序设计期末综合练习题一.doc

    - Dim 语句和 Static 语句都可以声明局部变量,区别在于 Static 声明的变量在过程结束后仍保持其值。 6. **对象属性**: - 对象的属性包括属性名和属性值,可以通过属性窗口或代码设置。 - 并非所有属性都可以在...

    2022年语言程序设计在线作业.doc

    在这份在线作业中,我们可以看到 VB 语言程序设计的多种问题,涵盖了VB语言的基本概念、控件属性、事件处理、循环结构、条件语句等方面。下面,我们将对每道题进行详细的解释和分析。 1. 通过设置 Line 控件的 ...

    Visual Basic教材答案 第二章 第三章

    1. **属性设置**:VB中的控件(如Text4、Command按钮、Option按钮等)具有多种属性,如`BackColor`用于设置背景色,`Caption`用于设置标题,`Visible`用于控制对象的可见性,`Text`用于设置文本框的文本内容。...

    vbvb二级考试相关\vb二级考试相关\

    - Static用于声明在每次调用过程中保持其值的局部变量,如Static var3 As Integer。 8. **列表框操作** - 当前选中的列表项内容可以通过List1.Text获取。 9. **事件处理** - 窗体的MouseDown、MouseUp和Click...

Global site tag (gtag.js) - Google Analytics