Disable粗体字的生成

qq191371920

qq191371920

2016-02-19 13:56

有了下面这个Disable粗体字的生成教程,不懂Disable粗体字的生成的也能装懂了,赶紧get起来装逼一下吧!

摘 要:

       字体的Disable状态如果放大加粗就可以产生很震撼的宣传效果,放在About对话框里,更可以增强软件本身的艺术效果。
实际上,这种字体是“画”(Paint)上去的,那么不可缺少的操作就是OnPaint,另外,一个必用的类就是CFont,生成字体和字的大小。

举例说明。产生的效果如图。

第一步,添加变量 CFont m_font;

           定义显示的字符串 #define STSIGN "Sailmer Angent"
 
第二步,添加设置字体的函数 SetFont (CString m_str, int nHeight, int nWeight, BYTE bItalic, BYTE bUnderline)
 
实现如下:

void CDisableFontDlg::SetFont(CString m_str, int nHeight = -16, int nWeight = FW_BOLD, BYTE bItalic = TRUE, BYTE bUnderline = FALSE)
{
          if(m_font.m_hObject)
          {
              m_font.Detach();
          }
          m_font.CreateFont(nHeight, 0, 0, 0, nWeight, bItalic, bUnderline,0,0,0,0,0,0, m_str);

 
第三步,初始化字体

在 OnInitDialog() 函数中添加:SetFont("Verdana", -25);
 
第四步,添加OnPaint消息,实现如下:

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

CPaintDC dc(this); // device context for painting
// Draw font
     CRect m_rect;
     GetWindowRect(m_rect);
     ScreenToClient(m_rect);
 
     CFont* OldFont = dc.SelectObject(&m_font);
 
     CSize sizestr = dc.GetTextExtent(DISPLAYSTR, strlen(DISPLAYSTR));
 
     dc.DrawState(CPoint((m_rect.Width()-sizestr.cx)/2, 10), 
         m_rect.Size(), 
         DISPLAYSTR, 
         DSS_DISABLED, // Set Disable State
         TRUE, 0, (CBrush*)NULL);
 
     dc.SelectObject(OldFont);

到此为止就可以完成任务了。此程序经过调试,完全可用。

调试环境:Windows XP

编译环境:Visual Studio 2003

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

Disable粗体字的生成

编程语言 网络编程
Disable粗体字的生成

iphone粗体文本设置教程

iphone iPhone 5s iPhone 6 iphone刷机
iphone粗体文本设置教程

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

生成BIG5字符集所有字符

编程语言 网络编程
生成BIG5字符集所有字符

巧用查找替换将Word文档中数字改成粗体

办公软件
巧用查找替换将Word文档中数字改成粗体

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

气是如何生成的

中医保健 中医养生 中草药
气是如何生成的

ACDSee的HTML相册生成

Web开发
ACDSee的HTML相册生成

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

jQuery编写的超酷幻灯片效果

jQuery编写的超酷幻灯片效果

网络我们近在咫尺 - QQ伤感分组

网络我们近在咫尺 - QQ伤感分组
下拉加载更多内容 ↓