mfc ListBOX 的滚动条右键 菜单 怎么取消
如图中顶部底部 哪些东西全部取消 怎么弄 ListBox
[解决办法]
给你贴一份代码:
MYListBox.h#pragma once
#include "afxwin.h"
class CMYListBox : public CListBox
{
public:
CMYListBox(void);
~CMYListBox(void);
DECLARE_MESSAGE_MAP()
afx_msg void OnContextMenu(CWnd* /*pWnd*/, CPoint /*point*/);
};
MYListBox.cpp#include "StdAfx.h"
#include "MYListBox.h"
CMYListBox::CMYListBox(void)
{
}
CMYListBox::~CMYListBox(void)
{
}
BEGIN_MESSAGE_MAP(CMYListBox, CListBox)
ON_WM_CONTEXTMENU()
END_MESSAGE_MAP()
void CMYListBox::OnContextMenu(CWnd* /*pWnd*/, CPoint /*point*/)
{
// TODO: 在此处添加消息处理程序代码
//不需要任何事件。
}
testDlg.h(使用的地方)
// testDlg.h : 头文件
//
#pragma once
#include "afxwin.h"
#include "MYListBox.h"
// CtestDlg 对话框
class CtestDlg : public CDialog
{
// 构造
public:
CtestDlg(CWnd* pParent = NULL);// 标准构造函数
~CtestDlg();
// 对话框数据
enum { IDD = IDD_TEST_DIALOG };
protected:
virtual void DoDataExchange(CDataExchange* pDX);// DDX/DDV 支持
// 实现
protected:
HICON m_hIcon;
// 生成的消息映射函数
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
DECLARE_MESSAGE_MAP()
public:
CMYListBox* m_listbox2;
};
testDlg.cpp// testDlg.cpp : 实现文件
//
// CtestDlg 对话框
CtestDlg::CtestDlg(CWnd* pParent /*=NULL*/)
: CDialog(CtestDlg::IDD, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
m_listbox2 = new CMYListBox;
}
CtestDlg::~CtestDlg()
{
if (m_listbox2 != NULL)
{
delete m_listbox2;
m_listbox2 = NULL;
}
}
// CtestDlg 消息处理程序
BOOL CtestDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加额外的初始化代码
CRect ClientRect;
GetClientRect(ClientRect);
CRect ListBox2Rect(ClientRect.left, ClientRect.top+100, ClientRect.right, ClientRect.top+150);
m_listbox2->Create(WS_CHILD
[解决办法]
WS_VISIBLE
[解决办法]
LBS_STANDARD
[解决办法]
WS_HSCROLL, ListBox2Rect, this, 1);
m_listbox2->AddString(_T("易经八卦手中握"));
m_listbox2->AddString(_T("春秋诗经样样通"));
m_listbox2->AddString(_T("如若来世天堂道"));
m_listbox2->AddString(_T("心中乾坤已可见"));
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}