您现在的位置是:首页» 软件教程» vc listbox,vc中listbox使用方法

vc listbox,vc中listbox使用方法

2024-04-12 04:42:29
今天小编为大家分享Windows系统下载、Windows系统教程、windows相关应用程序的文章,希望能够帮助到大家! 1、不想用MFC的话,但用SendMessage会很麻烦的,因为消息太多,不便记忆。2、楼主可以看下这个标准头文件,在这个头文件中,已经为各种控件预定义了各种宏

今天小编为大家分享Windows系统下载、Windows系统教程、windows相关应用程序的文章,希望能够帮助到大家!

1、不想用MFC的话,但用SendMessage会很麻烦的,因为消息太多,不便记忆。

2、楼主可以看下这个标准头文件<windowsx.h>,在这个头文件中,已经为各种控件预定义了各种宏,这些宏的取名是精心设计的,方便记忆。楼主在需要的地方,可以以类似调用MFC控件类成员函数的方式来调用这些宏,这些宏最终会转换成SendMessage。<windowsx.h>是个纯win32头文件。

3、/*-------------------------------------------------

4、ListBox_AddString(hwndList, _T("新加的字符串");

5、-------------------------------------------------*/

6、譬如需要取出第三行(索引为2)中的文本,代码为:

7、/*-------------------------------------------------

8、len= ListBox_GetTextLen(hwndList, 2);

9、 pText=(LPTSTR)new TCHAR[len+ 1];

10、 ListBox_GetText(hwndList, 2, pText);

11、-------------------------------------------------*/

12、不过里面没有通用控件的宏,只有标准控件的宏。

13、在这里贴上List Box控件的消息宏:

14、/****** ListBox control message APIs*****************************************/

15、#define ListBox_Enable(hwndCtl, fEnable) EnableWindow((hwndCtl),(fEnable))

16、#define ListBox_GetCount(hwndCtl)((int)(DWORD)SNDMSG((hwndCtl), LB_GETCOUNT, 0L, 0L))

17、#define ListBox_ResetContent(hwndCtl)((BOOL)(DWORD)SNDMSG((hwndCtl), LB_RESETCONTENT, 0L, 0L))

18、#define ListBox_AddString(hwndCtl, lpsz)((int)(DWORD)SNDMSG((hwndCtl), LB_ADDSTRING, 0L,(LPARAM)(LPCTSTR)(lpsz)))

19、#define ListBox_InsertString(hwndCtl, index, lpsz)((int)(DWORD)SNDMSG((hwndCtl), LB_INSERTSTRING,(WPARAM)(int)(index),(LPARAM)(LPCTSTR)(lpsz)))

20、#define ListBox_AddItemData(hwndCtl, data)((int)(DWORD)SNDMSG((hwndCtl), LB_ADDSTRING, 0L,(LPARAM)(data)))

21、#define ListBox_InsertItemData(hwndCtl, index, data)((int)(DWORD)SNDMSG((hwndCtl), LB_INSERTSTRING,(WPARAM)(int)(index),(LPARAM)(data)))

22、#define ListBox_DeleteString(hwndCtl, index)((int)(DWORD)SNDMSG((hwndCtl), LB_DELETESTRING,(WPARAM)(int)(index), 0L))

23、#define ListBox_GetTextLen(hwndCtl, index)((int)(DWORD)SNDMSG((hwndCtl), LB_GETTEXTLEN,(WPARAM)(int)(index), 0L))

24、#define ListBox_GetText(hwndCtl, index, lpszBuffer)((int)(DWORD)SNDMSG((hwndCtl), LB_GETTEXT,(WPARAM)(int)(index),(LPARAM)(LPCTSTR)(lpszBuffer)))

25、#define ListBox_GetItemData(hwndCtl, index)((LRESULT)(ULONG_PTR)SNDMSG((hwndCtl), LB_GETITEMDATA,(WPARAM)(int)(index), 0L))

26、#define ListBox_SetItemData(hwndCtl, index, data)((int)(DWORD)SNDMSG((hwndCtl), LB_SETITEMDATA,(WPARAM)(int)(index),(LPARAM)(data)))

27、#define ListBox_FindString(hwndCtl, indexStart, lpszFind)((int)(DWORD)SNDMSG((hwndCtl), LB_FINDSTRING,(WPARAM)(int)(indexStart),(LPARAM)(LPCTSTR)(lpszFind)))

28、#define ListBox_FindItemData(hwndCtl, indexStart, data)((int)(DWORD)SNDMSG((hwndCtl), LB_FINDSTRING,(WPARAM)(int)(indexStart),(LPARAM)(data)))

29、#define ListBox_SetSel(hwndCtl, fSelect, index)((int)(DWORD)SNDMSG((hwndCtl), LB_SETSEL,(WPARAM)(BOOL)(fSelect),(LPARAM)(index)))

30、#define ListBox_SelItemRange(hwndCtl, fSelect, first, last)((int)(DWORD)SNDMSG((hwndCtl), LB_SELITEMRANGE,(WPARAM)(BOOL)(fSelect), MAKELPARAM((first),(last))))

31、#define ListBox_GetCurSel(hwndCtl)((int)(DWORD)SNDMSG((hwndCtl), LB_GETCURSEL, 0L, 0L))

32、#define ListBox_SetCurSel(hwndCtl, index)((int)(DWORD)SNDMSG((hwndCtl), LB_SETCURSEL,(WPARAM)(int)(index), 0L))

33、#define ListBox_SelectString(hwndCtl, indexStart, lpszFind)((int)(DWORD)SNDMSG((hwndCtl), LB_SELECTSTRING,(WPARAM)(int)(indexStart),(LPARAM)(LPCTSTR)(lpszFind)))

34、#define ListBox_SelectItemData(hwndCtl, indexStart, data)((int)(DWORD)SNDMSG((hwndCtl), LB_SELECTSTRING,(WPARAM)(int)(indexStart),(LPARAM)(data)))

35、#define ListBox_GetSel(hwndCtl, index)((int)(DWORD)SNDMSG((hwndCtl), LB_GETSEL,(WPARAM)(int)(index), 0L))

36、#define ListBox_GetSelCount(hwndCtl)((int)(DWORD)SNDMSG((hwndCtl), LB_GETSELCOUNT, 0L, 0L))

37、#define ListBox_GetTopIndex(hwndCtl)((int)(DWORD)SNDMSG((hwndCtl), LB_GETTOPINDEX, 0L, 0L))

38、#define ListBox_GetSelItems(hwndCtl, cItems, lpItems)((int)(DWORD)SNDMSG((hwndCtl), LB_GETSELITEMS,(WPARAM)(int)(cItems),(LPARAM)(int*)(lpItems)))

39、#define ListBox_SetTopIndex(hwndCtl, indexTop)((int)(DWORD)SNDMSG((hwndCtl), LB_SETTOPINDEX,(WPARAM)(int)(indexTop), 0L))

40、#define ListBox_SetColumnWidth(hwndCtl, cxColumn)((void)SNDMSG((hwndCtl), LB_SETCOLUMNWIDTH,(WPARAM)(int)(cxColumn), 0L))

41、#define ListBox_GetHorizontalExtent(hwndCtl)((int)(DWORD)SNDMSG((hwndCtl), LB_GETHORIZONTALEXTENT, 0L, 0L))

42、#define ListBox_SetHorizontalExtent(hwndCtl, cxExtent)((void)SNDMSG((hwndCtl), LB_SETHORIZONTALEXTENT,(WPARAM)(int)(cxExtent), 0L))

43、#define ListBox_SetTabStops(hwndCtl, cTabs, lpTabs)((BOOL)(DWORD)SNDMSG((hwndCtl), LB_SETTABSTOPS,(WPARAM)(int)(cTabs),(LPARAM)(int*)(lpTabs)))

44、#define ListBox_GetItemRect(hwndCtl, index, lprc)((int)(DWORD)SNDMSG((hwndCtl), LB_GETITEMRECT,(WPARAM)(int)(index),(LPARAM)(RECT*)(lprc)))

45、#define ListBox_SetCaretIndex(hwndCtl, index)((int)(DWORD)SNDMSG((hwndCtl), LB_SETCARETINDEX,(WPARAM)(int)(index), 0L))

46、#define ListBox_GetCaretIndex(hwndCtl)((int)(DWORD)SNDMSG((hwndCtl), LB_GETCARETINDEX, 0L, 0L))

47、#define ListBox_FindStringExact(hwndCtl, indexStart, lpszFind)((int)(DWORD)SNDMSG((hwndCtl), LB_FINDSTRINGEXACT,(WPARAM)(int)(indexStart),(LPARAM)(LPCTSTR)(lpszFind)))

48、#define ListBox_SetItemHeight(hwndCtl, index, cy)((int)(DWORD)SNDMSG((hwndCtl), LB_SETITEMHEIGHT,(WPARAM)(int)(index), MAKELPARAM((cy), 0)))

49、#define ListBox_GetItemHeight(hwndCtl, index)((int)(DWORD)SNDMSG((hwndCtl), LB_GETITEMHEIGHT,(WPARAM)(int)(index), 0L))

50、#define ListBox_Dir(hwndCtl, attrs, lpszFileSpec)((int)(DWORD)SNDMSG((hwndCtl), LB_DIR,(WPARAM)(UINT)(attrs),(LPARAM)(LPCTSTR)(lpszFileSpec)))

1、首先需要打开Excel的表格,如图所示,点击下面的文件1,鼠标右键单击选择查看代码。

2、然后就是进入代码页面,可以看到页面上现在的代码。

3、然后接下来就是需要用listbox用法,如图所示,输入Sheet1.Cells(1, 3)= Sheet1.Cells(1, 1)+ Sheet1.Cells(1, 2),回车。

4、最后,再返回到页面上,如图所示,双击一下表格就可以看到数字了,listbox用法成功。

wwW.Xtw.Com.cN系统网专业的PC、手机系统开发下载平台,HarmonyOS系统、安卓、OS、windows电脑重装系统在线下载安装,操作系统平台技术学习,攻略教程,技术交流。

免责声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。内容仅供参考使用,不准确地方联系删除处理!

联系邮箱:773537036@qq.com

标签: listbox Vc