智能终端定制开发 ad
MTK/瑞芯微/高通-Android,智能模块/智能终端方案商

深度定制各类智能终端和智能硬件产品,提供硬件选型咨询、参考设计、元器件推荐、驱动开发、行业模块集成、操作系统定制与算法集成等软硬件定制服务。
contact.aspx

Android核心板产品覆盖2G、3G、4G通讯,双核、四核、八核CPU,可选的平台有MTK6580、MTK6737、MTK6750等,Android版本有5.1 6.0 7.0等。
contact.aspx

可广泛应用于低端智能POS、安防监控、车载设备、低端智能机器人、智能家居、智能硬件、工业智能手持设备、低端智能对讲设备、低端警务或执法设备、智能穿戴、贩卖机、物流柜、智能门禁系统等行业和设备。
contact.aspx

可提供以太网转串口透传,WIFI转串口透传,蓝牙转串口透传,CAN总线模拟量控制输出模块等。
contact.aspx

带3G或4G通讯功能,运行android系统,有多个串口,可以外挂各种模块:条码扫描、RFID、指纹识别、身份证识别、磁条卡、ID卡、GPS/北斗模块等。
contact.aspx

具有4G通讯功能,多个RS232或RS485接口,以太网接口,USB接口,CAN接口,多个AD输入。基于Android系统智能平台,方便APP应用开发。器件严格选型,运行稳定,质量可靠。
contact.aspx

实现标题条的显示与隐藏
[VC 编程] 2008-04-17

有时候为了实际的显示面积大一些或其他的一些原因需要对标题条进行隐藏或显示。本文使用一个简单的例子,说明如何在MFC应用程序的框架下来实现它。其中使用API的方法也可用于其他的Windows应用开发环境。

CWnd类提供了一个函数ModifyStyle(),用于改变窗口的风格,原型如下:

BOOL ModifyStyle( DWORD dwRemove, Dword dwAdd, UINT nFlags = 0 );

其中参数dwRemove为希望去掉的窗口风格,参数dwAdd为希望加上的窗口风格,参数nFlags用于确定窗口的大小与位置。

以下以一个MFC MDI应用为例说明:(功能和代码为啥不分开,感觉上不能1、2、3排起来)

1. 添加一个菜单项,ID为ID_VIEW_TITLE_BAR,并用类向导为CMainFrame生成消息函数OnViewTitleBar和OnUpdateViewTitleBar。

2. 为CMainFrame添加一个BOOL型的成员变量m_bViewTitleBar,并在构造函数中赋为TRUE

3. 为OnViewTitleBar添加如下实现

void CMainFrame::OnViewTitleBar()

 {

m_bViewTitleBar = !m_bViewTitleBar;

 if (m_bViewTitleBar == FALSE)

{

// 隐藏TitleBar

ModifyStyle(WS_CAPTION, 0, SWP_FRAMECHANGED);

 } else

{

 // 显示TitleBar ModifyStyle(0, WS_CAPTION, SWP_FRAMECHANGED);

}

}

 

4.为OnUpdateViewTitleBar添加如下实现

void CMainFrame::OnUpdateViewTitleBar(CCmdUI* pCmdUI)

{

 pCmdUI->SetCheck(m_bViewTitleBar);

}

ModifyStyle在内部实际调用了三个API函数,在OnViewTitleBar也可以使用API来直接实现。

void CMainFrame::OnViewTitleBar()

{

m_bViewTitleBar = !m_bViewTitleBar;

LONG lStyle = ::GetWindowLong(this->m_hWnd, GWL_STYLE);

if (m_bViewTitleBar == FALSE)

{

// 隐藏TitleBar

::SetWindowLong(this->m_hWnd, GWL_STYLE, lStyle & ~WS_CAPTION);

::SetWindowPos(this->m_hWnd, NULL, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE | SWP_FRAMECHANGED);

}

else

{

// 显示TitleBar

::SetWindowLong(this->m_hWnd, GWL_STYLE, lStyle | WS_CAPTION);

::SetWindowPos(this->m_hWnd, NULL, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE | SWP_FRAMECHANGED);

}

本文源程序在Win2000 SP3 + VC6.0中调试通过。

[VC 编程添加评论 | 评论/阅读(0/448)
评论
昵称
主页
内容
递交


Copyright @ 我的开发笔记     2008 - 2017         粤ICP备19155526号-1