VC工具条下拉菜单的制种

2024-03-17 09:38

本文主要是介绍VC工具条下拉菜单的制种,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在网上搜到一个代码,http://www.vckbase.com/document/viewdoc/?id=514,但是它是在工具条指定按钮的旁边增加了一个单独的下拉箭头,按钮和小拉箭头本身有相互独立的映射函数,有时我们可能并不是需要这样的功能,而是要工具条按钮就是一个普通的下拉菜单,模范上述代码可以很简单地实现这个。

    在资源编辑器里,编辑指定的按钮图标,在其旁边画上一个小箭头(当然你完全可以不画这个,这样做只是让人知道它是一个下拉菜单)。然后在按钮的映射函数中加入如下代码:

 

  CMenu menu;
    menu.LoadMenu(IDR_POPMENU);
//  IDR_POPMENU 是要弹出的菜单的资源ID
    CMenu *  pPopup  =  popMenu -> GetSubMenu( 0 );  //  得到指定的子菜单,0表示IDR_POPMENU的第一个子菜单
    ASSERT(pPopup);
    
    CRect rc;
    m_wndToolBar.SendMessage(TB_GETRECT, pnmtb
-> iItem, (LPARAM) & rc);
    m_wndToolBar.ClientToScreen(
& rc);
    
    pPopup
-> TrackPopupMenu( TPM_LEFTALIGN  |  TPM_LEFTBUTTON  |  TPM_VERTICAL,
        rc.left, rc.bottom, 
this & rc);

呵呵,很就是这么简单,是你想要的吗?

这篇关于VC工具条下拉菜单的制种的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/818567

相关文章

VC网络协议

// PCControlDlg.cpp : 实现文件//#include "stdafx.h"#include "PCControl.h"#include "PCControlDlg.h"#include "afxdialogex.h"#ifdef _DEBUG#define new DEBUG_NEW#endif// 用于应用程序“关于”菜单项的 CAboutDlg 对话框#ifde

easyui 验证下拉菜单select

validatebox.js中添加以下方法: selectRequired: {validator: function (value) {if (value == "" || value.indexOf('请选择') >= 0 || value.indexOf('全部') >= 0) {return false;}else {return true;}},message: '该下拉框为必选项'}

VC环境下字符串转整型最终版

剑指Offer 字符串转化为整型 今天闲来无事,就搜了下这方面的知识,结果发现,这个题就是一个经典的算法题,在剑指Offer里已经详细分析了 直接上代码了,运行可靠,如果大家继续深入理解的话,参考这本书:《剑指Offer——名企面试官精讲典型编程题》 博主:http://blog.csdn.net/cadcisdhht/article/details/36875535 ---------

VC环境下window网络程序:UDP Socket程序

最近在学Windows网络编程,正好在做UDPsocket的程序,贴上来: 服务器框架函数:              socket();    bind();    recfrom();  sendto();  closesocket(); 客户机框架函数:            socket();      recfrom();  sendto();  closesocket();

VC环境下整型转换为字符串型(2)

在串口下位机的发送中,可能会用到需要发送数字,显示为字符串型的 和上一篇文字《串口中字符串转换为整型》一正一反,知识点学习会了: #include<iostream.h> #include <stdio.h> #include <string.h>   void inttostr(int m,unsigned char * str) { int length=0;   int tmp,te

New的VC编译器实现

当我们调用 new 的时候,例如 int *p = new int; 时,编译器到底作了什么工作呢?跟进断点看一看。   (在 vc debug模式下 ) double *p1 = new double ; 00411A6E  push        8    00411A70  call        operator new (4111B8h) 00411A75  add

[VC] Visual Studio中读写权限冲突

前置场景: 编译没有报错,但是运行提示 内存异常: 情景1: 如下代码运行异常,提示引发了异常:写入权限冲突。*** 是 0xFFFFF..... char* str = (char*)malloc(10);str[0] = 0x30;  解决方案:要包含头文件<stdlib.h>  情景2: 在FileA文件调用FileB文件的函数,但是在FileA中却没有声明该B函数的原型

Vue学习:v-model绑定文本框、单选按钮、下拉菜单、复选框等

v-model指令可以在组件上使用以实现双向绑定,之前学习过v-model绑定文本框和下拉菜单,今天把表单的几个控件单选按钮radio、复选框checkbox、多行文本框textarea都试着绑定了一下。 一、单行文本框和多行文本框 <p>1.单行文本框</p>用户名:<input type="text" v-model="inputMessage"><p>您的用户名是:{{inputMe

猫猫学iOS 之微博项目实战(12)发送微博自定义工具条代理实现点击事件

猫猫分享,必须精品 原创文章,欢迎转载。转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243 一:效果 二:封装好的工具条 NYComposeToolbar.h 带代理方法 #import <UIKit/UIKit.h>typedef enum {NYComposeToolbarButtonTypeCamera, // 拍照NYCompo

如何在VC中调用CLAPACK

转自http://hi.baidu.com/kaien_space/blog/item/dcb84b8b96347bd4fd1f1011.html     关于CLAPACK的使用网上的资料并不多。主要就是官方网站上的安装说明,以 及LAPACK官方论坛上的一些资料。然而,国外一般科研使用的平台都是UNIX或LINUX, 所以对于windows上使用CLAPACK的相关介绍就很少。幸