当前位置: 首页 > wzjs >正文

上海网站建设与设计seo研究协会网app

上海网站建设与设计,seo研究协会网app,html在线编辑网站,上海网站建设企业排名本章我们讲解基于对话框的MFC窗口相关的操作 该管理器要实现以下功能 初始化列表 初始化列表表头 初始化图像列表 初始化列表 功能实现 加载菜单 刷新列表 结束进程 隐藏窗口 最大化窗口 最小化窗口 手搓窗口管理器 // CWindowManage.cpp: 实现文件 //#include "pch.h&…

本章我们讲解基于对话框的MFC窗口相关的操作

该管理器要实现以下功能

初始化列表

初始化列表表头

初始化图像列表

初始化列表

功能实现

加载菜单

刷新列表

结束进程

隐藏窗口

最大化窗口

最小化窗口

手搓窗口管理器

// CWindowManage.cpp: 实现文件
//#include "pch.h"
#include "Manage.h"
#include "afxdialogex.h"
#include "CWindowManage.h"// CWindowManage 对话框IMPLEMENT_DYNAMIC(CWindowManage, CDialogEx)CWindowManage::CWindowManage(CWnd* pParent /*=nullptr*/): CDialogEx(IDD_WindowManage, pParent)
{}CWindowManage::~CWindowManage()
{
}void CWindowManage::DoDataExchange(CDataExchange* pDX)
{CDialogEx::DoDataExchange(pDX);DDX_Control(pDX, IDC_CWindowList, m_WindowList);
}BEGIN_MESSAGE_MAP(CWindowManage, CDialogEx)ON_NOTIFY(NM_RCLICK, IDC_CWindowList, &CWindowManage::OnOpenMenu)ON_COMMAND(ID_32782, &CWindowManage::OnWindowList)ON_COMMAND(ID_32783, &CWindowManage::OnKillProcess)ON_COMMAND(ID_32785, &CWindowManage::OnMaxWindow)ON_COMMAND(ID_32786, &CWindowManage::OnMinWindow)ON_COMMAND(ID_32784, &CWindowManage::OnShowWindow)
END_MESSAGE_MAP()// CWindowManage 消息处理程序BOOL CWindowManage::OnInitDialog()
{CDialogEx::OnInitDialog();// TODO:  在此添加额外的初始化m_WindowList.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);m_WindowList.InsertColumn(0, L"窗口名", LVCFMT_LEFT, 150);m_WindowList.InsertColumn(1, L"运行状态", LVCFMT_LEFT, 100);m_WindowList.InsertColumn(2, L"进程ID", LVCFMT_LEFT, 100);m_WindowList.InsertColumn(3, L"窗口句柄", LVCFMT_LEFT, 100);m_WindowList.InsertColumn(4, L"路径", LVCFMT_LEFT, 300);m_ImageList.Create(15, 15, ILC_COLOR32 | ILC_MASK, 0, 1);m_WindowList.SetImageList(&m_ImageList, LVSIL_SMALL);InitWindowList();return TRUE;  // return TRUE unless you set the focus to a control// 异常: OCX 属性页应返回 FALSE
}void CWindowManage::InitWindowList()
{CWnd* pWnd = AfxGetMainWnd()->GetWindow(GW_HWNDFIRST);ULONG Index = 0;while (pWnd){CString WindowText;TCHAR szProcessID[MAX_PATH] = { 0 };TCHAR szWindowHandle[MAX_PATH] = { 0 };TCHAR szWindowPath[MAX_PATH] = { 0 };if (pWnd->IsWindowVisible() && !pWnd->GetOwner()){pWnd->GetWindowText(WindowText);WindowText.TrimLeft();WindowText.TrimRight();}if (!WindowText.IsEmpty()){m_WindowList.InsertItem(Index, WindowText, Index);if (IsHungAppWindow(pWnd->m_hWnd)){m_WindowList.SetItemText(Index, 1, L"未响应");}else{m_WindowList.SetItemText(Index, 1, L"正在运行");}DWORD dwProcessID;GetWindowThreadProcessId(pWnd->m_hWnd, &dwProcessID);wsprintf(szProcessID, L"%d", dwProcessID);m_WindowList.SetItemText(Index, 2, szProcessID);wsprintf(szWindowHandle, L"%d", pWnd->m_hWnd);m_WindowList.SetItemText(Index, 3, szWindowHandle);HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, NULL, dwProcessID);GetModuleFileNameEx(hProcess, NULL, szWindowPath , MAX_PATH);m_WindowList.SetItemText(Index, 4, szWindowPath);InsertImage(szWindowPath);Index++;}pWnd = pWnd->GetNextWindow(GW_HWNDNEXT);}
}void CWindowManage::InsertImage(CString lpNamePath)
{HICON hIcon = NULL;hIcon = ::ExtractIcon(NULL, lpNamePath, 0);if (hIcon == NULL){m_ImageList.Add( LoadIcon(NULL, IDI_APPLICATION));}else{m_ImageList.Add(hIcon);}
}void CWindowManage::OnOpenMenu(NMHDR* pNMHDR, LRESULT* pResult)
{LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);// TODO: 在此添加控件通知处理程序代码POINT pt = { 0 };GetCursorPos(&pt);HMENU hMenu = LoadMenu(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDR_MENU4));hMenu = GetSubMenu(hMenu, 0);TrackPopupMenu(hMenu, TPM_LEFTALIGN, pt.x, pt.y, 0, m_hWnd, NULL);*pResult = 0;
}void CWindowManage::OnWindowList()
{// TODO: 在此添加命令处理程序代码m_WindowList.DeleteAllItems();while (m_ImageList.Remove(0));InitWindowList();
}void CWindowManage::OnKillProcess()
{// TODO: 在此添加命令处理程序代码DWORD dwPos = (DWORD)m_WindowList.GetFirstSelectedItemPosition();dwPos--;CString csProcessID =  m_WindowList.GetItemText(dwPos, 2);DWORD dwProcessID = _ttoi(csProcessID);HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwProcessID);TerminateProcess(hProcess, 0);CloseHandle(hProcess);
}void CWindowManage::OnMaxWindow()
{// TODO: 在此添加命令处理程序代码DWORD dwPos = (DWORD)m_WindowList.GetFirstSelectedItemPosition();dwPos--;CString cshWnd = m_WindowList.GetItemText(dwPos, 3);DWORD dwhWnd = _ttoi(cshWnd);ShowWindowAsync((HWND)dwhWnd, SW_MAXIMIZE);
}void CWindowManage::OnMinWindow()
{// TODO: 在此添加命令处理程序代码DWORD dwPos = (DWORD)m_WindowList.GetFirstSelectedItemPosition();dwPos--;CString cshWnd = m_WindowList.GetItemText(dwPos, 3);DWORD dwhWnd = _ttoi(cshWnd);ShowWindowAsync((HWND)dwhWnd, SW_MINIMIZE);
}void CWindowManage::OnShowWindow()
{// TODO: 在此添加命令处理程序代码DWORD dwPos = (DWORD)m_WindowList.GetFirstSelectedItemPosition();dwPos--;CString cshWnd = m_WindowList.GetItemText(dwPos, 3);DWORD dwhWnd = _ttoi(cshWnd);ShowWindowAsync((HWND)dwhWnd, SW_RESTORE);
}

http://www.dtcms.com/wzjs/349308.html

相关文章:

  • 石家庄免费建站竞价托管
  • 网站开发好的公司推荐每日新闻简报
  • 国内哪个推广网站做的好郑州短视频代运营公司
  • 番禺区盐城seo排名
  • 淄博市建设档案馆网站网站建设平台
  • wordpress作者编辑seo搜索引擎优化推荐
  • 柳州商城网站开发百度推广获客方法
  • 外围网站代理怎么做小红书推广运营
  • 网站策划方案怎么制作个人网站
  • 中国英文政务网站建设金蝶进销存免费版
  • 新建网站怎么做优化最新国际新闻事件今天
  • 陕西省西安市网站建设公司怎么用网络推广业务
  • 做设计在哪个网站上找高清图济南seo整站优化招商电话
  • 网站方案特色选择简短种子在线资源搜索神器
  • 蓝色网站配色方案微信运营
  • 全国网站建设公百度官网推广
  • 江门蓬江疫情优化大师电脑版官方
  • 做网站PV网络推广的方法有
  • 导航网站制作 zhihu网络推广外包怎么接单
  • 打开网站是iis7东莞seo网络公司
  • 做网站免费搭建友情链接有哪些
  • 做短视频的网站收益企业营销网站
  • 影响网站建设价格的因素有影视剪辑培训机构排名
  • p2p网站建设多少钱重庆森林为什么叫这个名字
  • 互联网网站备案流程搜索引擎优化期末考试答案
  • 营口网站制作北京网站建设公司优势
  • 做网站需要学编程吗外链怎么发
  • 禁用 wordpress 自带 jquery搜索引擎优化的方法与技巧
  • 建设部网站 防火规范长沙网络推广软件
  • 装饰工程合同范本宁波seo排名优化哪家好