我想在Dialog上的一个static edit控件上显示文本 Cstring str; 主要是想能让str 显示在我想定义的位置 ,比如50,50之类的,static text里可以实现么?
解决方案 »
- 关于完成端口+线程池的疑问?
- 我做了一个单文档程序,现在要在视图中输出很多实时信息,一行一行输出
- dll文件怎么加到exe文件中?(详细如下:)
- ATOM,"LRESULT CALLBACK",MSG,HINSTANCE之类...
- 请教用c++做数据库
- 如何恢复背景?(不是一般的重画)
- 怎样得到一个正在运行的程序的程序名(自己得到自己的程序名)
- 等差数列的第m项为n,n项为m,m+n项的值是多少?
- 请问怎么防止combobox重复加入字符串,怎么用语句设置combobox的style
- 请问VC++6和VC2008哪个好用?
- VSS取得最新版本后,怎么打开工程不会弹出登录窗口
- CDHtmlDialog 中取 input 中的text 的问题
m_static.MoveWindow(...);
爱移动到哪里,就移动到哪里。
dc.TextOut(GridStartX-GridWidth/3,GridStartY+size.cy/2+GridHeight*10,xUnit);
Static控件按默认的ID不受你控制
你要修改成其他的ID名
然后就 GetDlgItem(IDC_STATIC_**)操作这个static控件
修改一下他的属性,
然后MoveWindow 放置它在 对话框内的位置.但还是采用自写 控件的方法最好。
{
m_strText=strText;
Invalidate();
}void CNewStatic::OnPaint()
{
CPaintDC dc(this); // device context for painting
dc.SetBkMode(TRANSPARENT);
// TODO: Add your message handler code here
CRect rect;
GetClientRect(&rect);
CSize szText;
szText=dc.GetTextExtent(m_strText);
dc.TextOut((rect.Width()-szText.cx)/2,(rect.Height()-szText.cy)/2,m_strText);
// Do not call CStatic::OnPaint() for painting messages
}从CStatic派生出CNewStaic,加入函数SetWindowText覆盖原函数,再加入WM_PAINT消息响应函数
然后参考上面的...
{
// Construction
public:
CNewStatic();// Attributes
public:// Operations
public:// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CNewStatic)
//}}AFX_VIRTUAL// Implementation
public:
void SetWindowText(CString strText,CPoint point);
void SetWindowText(CString strText);
virtual ~CNewStatic(); // Generated message map functions
protected:
CPoint m_pos;
CString m_strText;
//{{AFX_MSG(CNewStatic)
afx_msg void OnPaint();
//}}AFX_MSG DECLARE_MESSAGE_MAP()
};头文件...
如果lz应要对控件本身进行修改,则需要重写控件的OnPaint()函数。6L的代码应该没大问题。使用PaintDC或者WindowDC都行。
dc.TextOut(5050,m_strText);
就可以了,不需要用控件
apple 我想显示在自己想在的位置(IDC_STATIC_WORD之内),我主要是想实现这个。