驱动器组合框

揭秘cocos-mcp:如何用AI助手提升CocosCreator游戏开发效率 本文深入介绍了cocos-mcp工具,它作为连接AI助手与CocosCreator编辑器的桥梁,遵循MCP协议,能显著提升游戏开发效率。通过自然语言指令,开发者可让AI直接查询场景结构、批量修改属性或生成上下文代码,将重复操作变为智能调度,实现从“手动操作者”到“指令指挥官”的工作流变革。 阅读详情

 

 

相信用过VB的人都对那些驱动器,目录,文件列表控件有兴趣,VC中没有,只好自己做了。以下是我自己写的驱动器组合框控件代码。

/////////// DriveBox.h

class CDriveBox : public CComboBoxEx
{
public:
 CDriveBox();
 virtual ~CDriveBox();

 // Generated message map functions
protected:
 //  {{AFX_MSG(CDriveBox)
 afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
 //  }}AFX_MSG

DECLARE_MESSAGE_MAP()
public:
 int GetSelDrive();
 bool SetSelDrive(char drive);
 void Initialize();
private:
 void AddItem(char *path,int index);
 CImageList m_img;
 char m_drivers[50];
};

 

////////////////////

// DriveBox.cpp : implementation file
//

#include "stdafx.h"
#include "DriveBox.h"


CDriveBox::CDriveBox()
{
 
}

CDriveBox::~CDriveBox()
{
}


BEGIN_MESSAGE_MAP(CDriveBox, CComboBoxEx)
  // {{ AFX_MSG_MAP(CDriveBox)
 ON_WM_CREATE()
 // }}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDriveBox message handlers

int CDriveBox::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
 if (CComboBoxEx::OnCreate(lpCreateStruct) == -1)
  return -1;
 
 // TODO: Add your specialized creation code here
 Initialize();
 return 0;
}

void CDriveBox::Initialize()
{
 m_img.Create( GetSystemMetrics(SM_CXSMICON),
            GetSystemMetrics(SM_CYSMICON),
           ILC_MASK|ILC_COLORDDB, 50, 50);
 m_img.SetBkColor( GetSysColor(COLOR_WINDOW) );
 SetImageList(&m_img);
 char *ptr,drivename[500];
 GetLogicalDriveStrings(500,drivename);
 ptr=drivename;int index=0;
 while (*ptr)
 {
 m_drivers[index]=*ptr;
 AddItem(ptr,index++);
 ptr+=strlen(ptr)+1;
 }
 SetSelDrive('c');
}

void CDriveBox::AddItem(char *path,int index)
{
 SHFILEINFO pathInfo,path_SelInfo;
 SHGetFileInfo( path, NULL, &pathInfo,
  sizeof(pathInfo),
  SHGFI_DISPLAYNAME | SHGFI_ICON | SHGFI_SMALLICON);
 SHGetFileInfo( path, NULL, &path_SelInfo,
  sizeof(path_SelInfo),
  SHGFI_DISPLAYNAME |  SHGFI_ICON | SHGFI_OPENICON | SHGFI_SMALLICON);
 int icon=m_img.Add(pathInfo.hIcon);
 int icon_sel=m_img.Add(path_SelInfo.hIcon);
 COMBOBOXEXITEM item;
 item.mask=CBEIF_TEXT|CBEIF_IMAGE|CBEIF_SELECTEDIMAGE;
 item.pszText=pathInfo.szDisplayName;
 item.iSelectedImage=icon;
 item.iImage=icon;//正常图标
 item.iItem=index;
 InsertItem(&item);
}

int CDriveBox::GetSelDrive()//返回所选磁盘
{
 int sel=GetCurSel();
 char driver=m_drivers[sel];
 driver=toupper(driver);
 return (driver-65);//返回数字索引,如0为A盘,2为C盘
 //  return   driver;//返回盘符
}

bool CDriveBox::SetSelDrive(char drive)//设置磁盘
{
 if(!isalpha(drive))return FALSE;
 drive=toupper(drive);int index=0;
 while(drive!=toupper(m_drivers[index]))index++;
 SetCurSel(index);return TRUE;

}


//////

如何使用?

建立一个对话框工程CTestDlg,用ResourceEditor加入一个ComboBoxEx控件,用ClassWizard加入一个Control成员m_box, 然后在CTestDlg.h中将CComboBoxEx改为CDriveBox,在CTestDlg.h开始处加一句#include  "CDriveBox.h",在CTestDlg::OnInitDialog()中加上m_box.Initialize()就OK了。用m_box.GetSelDrive()返回当前选择驱动器.如0为A盘,2为C盘。

K8S部署Java项目 pod的logs报错为:Error: Unable to access jarfile app.jar 每个人都有惰性,但不断学习是好好生活的根本,共勉! 阅读详情

相关推荐

Windows下用RKDevTool解包update.img的完整流程(含常见错误排查)

本文详细介绍了在Windows系统下使用RKDevTool工具解包update.img固件的完整流程。从工具准备、环境搭建到逐步解包操作,重点解析了输出文件结构,并提供了修改分区后重新打包的实战方法。文章还针对解包失败、打包错误等常见问题提供了详细的排查与解决方案,旨在帮助嵌入式开发者和爱好者高效完成固件分析与定制工作。

aa123的博客 716

mfc 获取C盘信息

void CGetSysInfo::GetDiskInfo(DWORD &dwNum,CString chDriveInfo[]) { DWORD DiskCount = 0; //利用GetLogicalDrives()函数可以获取系统中逻辑驱动器的数量,函数返回的是一个32位无符号整型数据。 DWORD DiskInfo = GetLogicalDrives(); ...

西北攻城狮的博客 635

VH6501实战:手把手教你用CANoe脚本精准触发CAN总线干扰(附避坑点)

本文详细介绍了使用VH6501和CANoe脚本精准触发CAN总线干扰的实战技巧,包括触发位置控制、ValidityMask配置和干扰序列设置等关键步骤。通过具体代码示例和常见问题排查指南,帮助工程师避开实际应用中的常见陷阱,提升CAN总线干扰测试的准确性和效率。

weixin_33709219的博客 370

关于树形控件和组合框的问题~

想要的效果:已经可以在组合框一列列的添加驱动盘选择项,然后点击对应的驱动器后想在旁边的树形控件中相应盘里面的文件。 实际效果:问题1,点击c盘和d盘,出来A-Z的根节点,但是出不来相应的文件;问题2,点击e盘和f盘就出错说内存不能读。大家帮忙看看哪里出错了哈。辛苦大家啦~~ void CHView::OnSelchangeCombo1() //选择combobox的不同选项触发,m_combo

hongsurou9941的博客 522

康耐视 VisionPro CogImageFileTool(将获得的图像保存至文件或从文件中获取图像)工具

VisionPro CogImageFileTool(将获得的图像保存至文件或从文件中获取图像)工具

zhihuishuxia__的博客 2064

RV1126平台JD9366触摸屏驱动移植实战:从源码到烧录的完整指南

本文详细介绍了在RV1126平台上移植JD9366触摸屏驱动的完整流程,从环境准备、源码获取到驱动配置、内核编译、设备树设置以及固件烧录与测试验证。通过实战经验分享和常见问题排查,帮助开发者高效完成触摸屏驱动移植,适用于嵌入式Linux开发场景。

weixin_30872337的博客 410

使用C#获取有关磁盘驱动器的信息例如大小和可用空间

对象,然后使用该对象的属性来了解该驱动器。这里唯一的技巧是,代码会在访问驱动器的其他一些属性之前检查驱动器的。如果驱动器尚未准备好,其中一些属性会引发异常。(例如,如果驱动器是空的 DVD 驱动器。命名空间中的对当程序启动时,它使用以下代码将系统上可用的驱动器添加到名为。象,因此它包含以下语句以使使用该命名空间更容易。当您选择一个驱动器时,以下代码会显示有关它的信息。下载示例进行试验并查看更多详细信息。此代码会创建一个代表所选驱动器的。

ljygood2的博客 524

如何实现在Go语言中替换程序自身

总结起来,我们可以通过将新的程序二进制文件写入磁盘,并在运行时启动这个新的程序来实现在Go语言中替换程序自身。在Go语言中,有时候我们需要在程序运行时替换程序自身,例如更新程序版本或者进行热重启。本文将介绍一种正确的方式来实现在Go语言中替换程序自身的方法,并提供相应的源代码示例。此外,替换程序自身可能会导致正在运行的程序产生意外行为或终止,请谨慎使用,并确保在合适的时机进行替换操作。实现替换程序自身的关键是将新的程序二进制文件写入到磁盘,并在运行时启动这个新的程序。函数启动新的可执行文件,并在后台运行。

HoUnix的博客 289

C# 得到系统中所有驱动器的列表

主要是IsReady的判断: publicvoidInitDirveList()...{Stringstr;foreach(DriveInfodriveinDriveInfo.GetDrives())...{if(drive.IsReady)...{str=drive.Name+"";str+=drive.DriveFormat+"";str+="类型:"+drive.DriveType;...

helloyesyes 697

第二节:Vben Admin 最新 v5.0 (vben5) + Python Flask 快速入门 - Python Flask 后端开发详解(附源码)

大家好,我是cuiwin!本节内容,我们从零开始开发基于Python(Flask)的后端项目,对接Vue Vben Admin(vben5)。登录mysql数据库执行: 创建数据库。

cuiwin的专栏 2266

13、数据来源介绍与操作指南

本文详细介绍了多种数据源的特点、操作步骤及适用场景,包括元数据数据源、MongoDB数据源、Pentaho Data Integration数据源、OLAP数据源、Pentaho分析数据源和OLAP4J数据源。通过流程图和表格对比,帮助用户理解不同数据源的选择与使用方法,并提供了实际应用案例和注意事项,旨在提升数据获取与分析效率,支持高效报告生成。

ik678901234的博客 152

dlgdirselectcomboboxex

      函数功能:该函数从由DlgDirlistcomboBox函数填充的组合框中检取当前选择。选择内容为一个驱动器字母、文件名或目录名。    函数原型:BOOL DlgDirSelectComboBox(HWND hDlg,LPTSTR lpString,int nCount,int nlDComboBox);    参数:    hDlg:包括组合框的对话框的句柄。    IpStrin

395

Python-自动化绘制股票价格通道线

创建更强大、更可靠的价格通道检测算法。

探索人工智能领域 948

dlgdirselectcomboboxexl

      函数功能:该函数从由DlgDirlistcomboBox函数填充的组合框中检取当前选择。选择内容为一个驱动器字母、文件名或目录名。    函数原型:BOOL DlgDirSelectComboBox(HWND hDlg,LPTSTR lpString,int nCount,int nlDComboBox);    参数:    hDlg:包括组合框的对话框的句柄。    IpStrin

346

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

GetLogicalDriveStrings

功能:获取主机中所有的逻辑驱动器,以驱动器根路径字符串返回。 函数原型如下: DWORD GetLogicalDriveStrings( DWORD nBufferLength, LPTSTR lpBuffer); 参数: nBufferLength: 指向的内存空间的大小,以字节为单位。 lpBuffer: 指向存储返回结果字符串的内存空间 返回值: 函数的返回值指明了函数调用

小米的修行之路 7102

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

在不使用通用文件打开对话的情况下如何显示一个文件列表

调用CWnd: : DlgDirList或者CWnd: : DlgDirListComboBox, Windows 将自动地向列表框或组合框填充可用的驱动器名或者指定目录中的文件,下例将Windows目录中的文件填充在组合框中: BOOL CSampleDig : : OnInitDialog ( ) CDialog : : OnInitDialog ( ) TCHAR szPath [MAX_P

1018

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

求助

有谁能帮忙解释一下面的代码吗?size_t alldriver=::GetLogicalDriveStrings(0,NULL); _TCHAR *driverstr; driverstr=new _TCHAR[alldriver+sizeof(_T(""))]; if(GetLogicalDriveStrings(alldriver,driverstr)!=alldriver

王天(C/C++) 458

如何利用GetLogicalDrives得到本机的驱动盘?

var str: string; drivers: integer; driver: char; i, temp: integer; begin drivers := getlogicaldrives; temp := (...

weixin_30621959的博客 146

GetLogicalDrives()函数

原型:DWORD GetLogicalDrivers (void); 说明:函数返回值是一个long型,将其用二进制显示时,其中第0位表示A盘,第1位表示B盘,当某位为1时说明存在这个盘,即00000011表示有A盘和B盘。 看这个例子 #include int main() { DWORD dw; TCHAR TC1[50],TC2[50]; dw = Get

laoye_laoye的专栏 2289

计算机登录 用户,找出计算机上当前登录入网的用户

有的程序员希望能够显示用户当前登录的用户名。这使得程序员可以识别当前企图执行某个操作的用户,也可以通知用户机器已被某个用户以外的用户名登录。如何使用 Windows 9x 的网络函数来完成此功能呢?利用 Windows API 函数 WNetGetUser 可以确定当前登录的用户。在 WIN32 系统中(Windows 9x 和 Windows NT),此函数接受本地驱动器名,返回用户名及其大小(...

weixin_30649293的博客 261

找出计算机上当前登录入网的用户

有的程序员希望能够显示用户当前登录的用户名。这使得程序员可以识别当前企图执行某个操作的用户,也可以通知用户机器已被某个用户以外的用户名登录。如何使用 Windows 9x 的网络函数来完成此功能呢?   利用 Windows API 函数 WNetGetUser 可以确定当前登录的用户。在 WIN32 系统中(Windows 9x 和 Windows NT),此函数接受本地驱动器名,返回用户名

燕青专栏 972

搜 索 计 算 机 中 所 有 驱 动 器

void FindDriverInfo(){CComboBox* Driver=(CComboBox*)GetDlgItem(IDC_DRIVER);DWORD dwNumBytesForDriveStrings;HANDLE hHeap;LPSTR lp;CString strLogdrive;int nNumDrives=0, nDriveNum;dwNumBytesForDriveStrin

1376

读取磁盘(c#流 文件)

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO;

cok1iu的专栏 1086
下一篇: 证明 C Runtime 和 Windows API 对安全性的影响
UU码农
博客等级 码龄26年 1粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值