-
2022-03-20 22:41:08
Python list列表添加元素的3种方法
实际开发中,经常需要对 Python 列表进行更新,包括向列表中添加元素、修改表中元素以及删除元素。本节先来学习如何向列表中添加元素。
前一节告诉我们,使用+运算符可以将多个序列连接起来;列表是序列的一种,所以也可以使用+进行连接,这样就相当于在第一个列表的末尾添加了另一个列表。
请看下面的演示:
language = ["Python", "C++", "Java"] birthday = [1991, 1998, 1995] info = language + birthday print("language =", language) print("birthday =", birthday) print("info =", info)
运行结果:
language = ['Python', 'C++', 'Java'] birthday = [1991, 1998, 1995] info = ['Python', 'C++', 'Java', 1991, 1998, 1995]
从运行结果可以发现,使用+会生成一个新的列表,原有的列表不会被改变。
+更多的是用来拼接列表,而且执行效率并不高,如果想在列表中插入元素,应该使用下面几个专门的方法。
Python append()方法添加元素
append() 方法用于在列表的末尾追加元素,该方法的语法格式如下:
listname.append(obj)
其中,listname 表示要添加元素的列表;obj 表示到添加到列表末尾的数据,它可以是单个元素,也可以是列表、元组等。
请看下面的演示:
l = ['Python', 'C++', 'Java'] #追加元素 l.append('PHP') print(l) #追加元组,整个元组被当成一个元素 t = ('JavaScript', 'C#', 'Go') l.append(t) print(l) #追加列表,整个列表也被当成一个元素 l.append(['Ruby', 'SQL']) print(l)
运行结果为:
['Python', 'C++', 'Java', 'PHP'] ['Python', 'C++', 'Java', 'PHP', ('JavaScript', 'C#', 'Go')] ['Python', 'C++', 'Java', 'PHP', ('JavaScript', 'C#', 'Go'), ['Ruby', 'SQL']]
可以看到,当给 append() 方法传递列表或者元组时,此方法会将它们视为一个整体,作为一个元素添加到列表中,从而形成包含列表和元组的新列表。
Python extend()方法添加元素
extend() 和 append() 的不同之处在于:extend() 不会把列表或者元祖视为一个整体,而是把它们包含的元素逐个添加到列表中。
extend() 方法的语法格式如下:
listname.extend(obj)
其中,listname 指的是要添加元素的列表;obj 表示到添加到列表末尾的数据,它可以是单个元素,也可以是列表、元组等,但不能是单个的数字。
请看下面的演示:
l = ['Python', 'C++', 'Java'] #追加元素 l.extend('C') print(l) #追加元组,元祖被拆分成多个元素 t = ('JavaScript', 'C#', 'Go') l.extend(t) print(l) #追加列表,列表也被拆分成多个元素 l.extend(['Ruby', 'SQL']) print(l)
运行结果:
['Python', 'C++', 'Java', 'C'] ['Python', 'C++', 'Java', 'C', 'JavaScript', 'C#', 'Go'] ['Python', 'C++', 'Java', 'C', 'JavaScript', 'C#', 'Go', 'Ruby', 'SQL']
Python insert()方法插入元素
append() 和 extend() 方法只能在列表末尾插入元素,如果希望在列表中间某个位置插入元素,那么可以使用 insert() 方法。
insert() 的语法格式如下:
listname.insert(index , obj)
其中,index 表示指定位置的索引值。insert() 会将 obj 插入到 listname 列表第 index 个元素的位置。
当插入列表或者元祖时,insert() 也会将它们视为一个整体,作为一个元素插入到列表中,这一点和 append() 是一样的。
请看下面的演示代码:
l = ['Python', 'C++', 'Java'] #插入元素 l.insert(1, 'C') print(l) #插入元组,整个元祖被当成一个元素 t = ('C#', 'Go') l.insert(2, t) print(l) #插入列表,整个列表被当成一个元素 l.insert(3, ['Ruby', 'SQL']) print(l) #插入字符串,整个字符串被当成一个元素 l.insert(0, "i like python") print(l)
输出结果为:
['Python', 'C', 'C++', 'Java'] ['Python', 'C', ('C#', 'Go'), 'C++', 'Java'] ['Python', 'C', ('C#', 'Go'), ['Ruby', 'SQL'], 'C++', 'Java'] ['i like python', 'Python', 'C', ('C#', 'Go'), ['Ruby', 'SQL'], 'C++', 'Java']
提示,insert() 主要用来在列表的中间位置插入元素,如果你仅仅希望在列表的末尾追加元素,那我更建议使用 append() 和 extend()。
更多相关内容 -
VC6.0 MFC 列表框 列表控件 添加 修改 删除
2020-06-28 15:46:24VC6.0 MFC 列表框 列表控件 添加 修改 删除 写在前面:列表框是很常用,并且很重要的一个控件,那么接下来,就跟随我的脚步,去探索它的奥秘吧! 一、未卜先知 1、编译运行后,点击“学生档案信息”,界面如下图所示...VC6.0 MFC 列表框 列表控件 添加 修改 删除
写在前面:列表框是很常用,并且很重要的一个控件,那么接下来,就跟随我的脚步,去探索它的奥秘吧!
一、未卜先知
1、编译运行后,点击“学生档案信息”,界面如下图所示。
2、添加记录,如下图所示。
3、修改记录,如下图所示。
4、删除记录,如下图所示。
二、实现步骤1、新建一个工程,如下图所示。
2、建立菜单,并给菜单做一个消息响应函数,如下图所示。
3、接下来在对话框中进行相应操作,具体步骤如下图所示。
4、建立类向导,取类名“CDlgStuInfo”,如下图所示。
5、接下来,我们通过编程添加一些数据。首先在CdlgStuInfo中右击添加消息响应句柄,如下图所示。
6、在OnInitDialog() 中添加代码,如下。BOOL CDlgStuInfo::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here DWORD dwStyle; dwStyle = m_listCtrl.GetExtendedStyle(); dwStyle |= LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_ONECLICKACTIVATE; m_listCtrl.SetExtendedStyle(dwStyle); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
记得要把头文件:#include "DlgStuInfo.h"对话框类嵌入进去!
7、在OnMStuInfo()中添加代码,如下。
void CChapterView::OnMStuInfo() { // TODO: Add your command handler code here CDlgStuInfo dlg_stuInfo; dlg_stuInfo.DoModal(); }
8、此时,运行结果如下图所示。
9、在第6步的基础上,继续往OnInitDialog() 中添加代码,如下。BOOL CDlgStuInfo::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here DWORD dwStyle; dwStyle = m_listCtrl.GetExtendedStyle(); dwStyle |= LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_ONECLICKACTIVATE; m_listCtrl.SetExtendedStyle(dwStyle); //设置显示风格 m_listCtrl.InsertColumn(0,"学号",LVCFMT_CENTER,100); //第一个参数是字段的编号 m_listCtrl.InsertColumn(1,"姓名",LVCFMT_CENTER,100); //第二个参数是字段的名字 m_listCtrl.InsertColumn(2,"性别",LVCFMT_CENTER,100); //第三个参数是字段的显示风格 m_listCtrl.InsertColumn(3,"专业",LVCFMT_CENTER,100); //第四个参数是字段的宽度 m_listCtrl.InsertColumn(4,"班级",LVCFMT_CENTER,100); //设置表格字段名 m_listCtrl.InsertItem(0,"0001"); //0即表格中的第一行 m_listCtrl.SetItemText(0,1,"张三"); m_listCtrl.SetItemText(0,2,"男"); m_listCtrl.SetItemText(0,3,"电子信息"); m_listCtrl.SetItemText(0,4,"202001"); //在表格中添加数据,插入一行记录 m_listCtrl.InsertItem(1,"0002"); m_listCtrl.SetItemText(1,1,"李丽"); m_listCtrl.SetItemText(1,2,"女"); m_listCtrl.SetItemText(1,3,"计算机"); m_listCtrl.SetItemText(1,4,"202002"); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
10、新建一个对话框,具体如下图所示。
11、紧接着建立它所对应的类,如下图所示。
12、双击“添加记录”按钮,把“添加一条学生记录信息”这个对话框给调出来,如下图所示。
13、把“添加一条学生记录信息”对话框的头文件:#include "Dlg_StuInfoAppe.h"嵌入进来。然后在OnBTNAppe()中编程。void CDlgStuInfo::OnBTNAppe() { // TODO: Add your control notification handler code here CDlg_StuInfoAppe dlg_stuInfoAppe; dlg_stuInfoAppe.DoModal(); }
14、接下来怎么把一条新的学生信息通过“添加一条学生记录信息”对话框加到上一个 “学生档案信息”对话框的列表中去,这是我们的目的。
15、在对应部分添加如下代码:
CString m_sNo,m_sName,m_sSex,m_sDept,m_sClass;
class CDlgStuInfo : public CDialog { // Construction public: CDlgStuInfo(CWnd* pParent = NULL); // standard constructor // Dialog Data //{{AFX_DATA(CDlgStuInfo) enum { IDD = IDD_DlgStuInfo }; CListCtrl m_listCtrl; //}}AFX_DATA CString m_sNo,m_sName,m_sSex,m_sDept,m_sClass; int m_listSelPos; //获取当前被选中的位置 // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CDlgStuInfo) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: // Generated message map functions //{{AFX_MSG(CDlgStuInfo) virtual BOOL OnInitDialog(); afx_msg void OnBTNAppe(); afx_msg void OnBTNModi(); afx_msg void OnClickList1(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnBTNDele(); //}}AFX_MSG DECLARE_MESSAGE_MAP() };
16、点击“确定”按钮后接收添加的信息到上一个 (学生档案信息)对话框的列表中去,代码如下。
void CDlgStuInfo::OnBTNAppe() { // TODO: Add your control notification handler code here CDlg_StuInfoAppe dlg_stuInfoAppe; if(IDOK == dlg_stuInfoAppe.DoModal()) { m_sNo = dlg_stuInfoAppe.m_sNo; m_sName = dlg_stuInfoAppe.m_sName; m_sSex = dlg_stuInfoAppe.m_sSex; m_sDept = dlg_stuInfoAppe.m_sDept; m_sClass = dlg_stuInfoAppe.m_sClass; //把添加记录对话框中的数据传过来,保存到基础信息对话框中 int pos; //添加的位置 pos = m_listCtrl.GetItemCount(); m_listCtrl.InsertItem(pos,m_sNo); m_listCtrl.SetItemText(pos,1,m_sName); m_listCtrl.SetItemText(pos,2,m_sSex); m_listCtrl.SetItemText(pos,3,m_sDept); m_listCtrl.SetItemText(pos,4,m_sClass); //把获取进来的数据插进去 } }
17、双击“修改记录”按钮,把“修改记录信息”这个对话框给调出来(同12)。
18、把“修改记录信息”对话框的头文件:#include "Dlg_StuInfoModi.h"嵌入进来。然后在OnBTNModi()中编程(同13)。
void CDlgStuInfo::OnBTNModi() { // TODO: Add your control notification handler code here CDlg_StuInfoModi dlg_stuInfoModi; dlg_stuInfoModi.DoModal(); }
19、接下来怎么把 “修改记录信息”对话框中要修改的记录更新到上一个 “学生档案信息”对话框的列表中去,这是我们的目的(同14)。
20、我们回到IDD_DlgStuInfo对话框,选中对话框,右击选择“事件…”,在弹出的事件句柄中选择“NM_CLICK”,如下图所示。
void CDlgStuInfo::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here m_listSelPos = m_listCtrl.GetSelectionMark(); //获取当前被选行的信息,传送到编辑对话框中去 *pResult = 0; }
21、添加代码如下(类似16)。
void CDlgStuInfo::OnBTNModi() { // TODO: Add your control notification handler code here CDlg_StuInfoModi dlg_stuInfoModi; dlg_stuInfoModi.m_sNo = m_listCtrl.GetItemText(m_listSelPos,0); //获取当前记录的显示的文本 dlg_stuInfoModi.m_sName = m_listCtrl.GetItemText(m_listSelPos,1); dlg_stuInfoModi.m_sSex = m_listCtrl.GetItemText(m_listSelPos,2); dlg_stuInfoModi.m_sDept = m_listCtrl.GetItemText(m_listSelPos,3); dlg_stuInfoModi.m_sClass = m_listCtrl.GetItemText(m_listSelPos,4); if(IDOK == dlg_stuInfoModi.DoModal()) { //把新数据传送给浏览对话框,实现信息的修改 UpdateData(true); //把对话框中的信息更新到内存中去 m_listCtrl.SetItemText(m_listSelPos,0,dlg_stuInfoModi.m_sNo); m_listCtrl.SetItemText(m_listSelPos,1,dlg_stuInfoModi.m_sName); m_listCtrl.SetItemText(m_listSelPos,2,dlg_stuInfoModi.m_sSex); m_listCtrl.SetItemText(m_listSelPos,3,dlg_stuInfoModi.m_sDept); m_listCtrl.SetItemText(m_listSelPos,4,dlg_stuInfoModi.m_sClass); } }
22、“删除记录”类似,不再叙述。这里仅将该部分代码附上,如下。
void CDlgStuInfo::OnBTNDele() { // TODO: Add your control notification handler code here CString str; str.Format("确认删除第 %d 行",m_listSelPos + 1); if(IDYES == AfxMessageBox(str,MB_YESNO|MB_ICONQUESTION)) { m_listCtrl.DeleteItem(m_listSelPos); } }
三、执行结果
1、编译运行后,点击“学生档案信息”,界面如下图所示。
2、添加记录,如下图所示。
3、修改记录,如下图所示。
4、删除记录,如下图所示。
-
CListCtrl 添加编辑框,下拉列表框,时间控件
2011-01-14 17:13:00CListCtrl 添加编辑框,下拉列表框,时间控件 CListCtrl 添加编辑框,下拉列表框,时间控件 -
易语言列表框防止项目重复加入列表框
2020-07-09 09:06:52本节视频通过三种方法实现了防止项目重复加入列表框。 易语言列表框防止项目重复加入列表框视频教程源码: .版本 2 .程序集 窗口程序集_启动窗口 .子程序 __启动窗口_创建完毕 列表框1.现行选中项 = 0 ...本节视频通过三种方法实现了防止项目重复加入列表框。
易语言列表框防止项目重复加入列表框视频教程源码:
.版本 2 .程序集 窗口程序集_启动窗口 .子程序 __启动窗口_创建完毕 列表框1.现行选中项 = 0 皮肤_加载 (1) .子程序 _按钮1_被单击 列表框1.加入项目 (编辑框1.内容, ) 编辑框1.内容 = “” .子程序 _按钮2_被单击, , , 不重复加入-1 .如果 (列表框1.选择 (编辑框1.内容) = -1) 列表框1.加入项目 (编辑框1.内容, ) 信息框 (“添加成功!”, 0, , ) .否则 信息框 (“已经存在【” + 编辑框1.内容 + “】请不要重复添加该内容!”, 0, , ) .如果结束 .子程序 _按钮3_被单击, , , 不重复加入-2 .如果 (SendMessageA (列表框1.取窗口句柄 (), 399, 0, 编辑框1.内容) = -1) 列表框1.加入项目 (编辑框1.内容, ) 信息框 (“添加成功!”, 0, , ) .否则 信息框 (“已经存在【” + 编辑框1.内容 + “】请不要重复添加该内容!”, 0, , ) .如果结束 .子程序 _按钮4_被单击, , , 不重复加入-3 .局部变量 i, 整数型 .局部变量 重复, 逻辑型 .计次循环首 (列表框1.取项目数 (), i) .如果真 (列表框1.取项目文本 (i - 1) = 编辑框1.内容) 重复 = 真 跳出循环 () .如果真结束 重复 = 假 .计次循环尾 () .如果 (重复 = 假) 列表框1.加入项目 (编辑框1.内容, ) 编辑框1.内容 = “” 信息框 (“添加成功!”, 0, , ) .否则 信息框 (“已经存在【” + 编辑框1.内容 + “】请不要重复添加该内容!”, 16, , ) .如果结束
源码:511遇见易语言教程
-
MFC列表框控件的动态编辑
2019-09-10 13:14:41在我们进行mfc 编程时,我们需要用到列表框显示各层或各物体的参数设置,同时也希望能编辑其参数。我以前在网上查找,用了CComboListCtrl,这需要3个cpp 和 h 文件,用起来还不容易。 最近看到一个文章...在我们进行mfc 编程时,我们需要用到列表框显示各层或各物体的参数设置,同时也希望能编辑其参数。我以前在网上查找,用了CComboListCtrl,这需要3个cpp 和 h 文件,用起来还不容易。
最近看到一个文章 https://blog.csdn.net/qingyang8513/article/details/50986455 ,这个直接用 listctrl 和 一个Edit 控件,很简单。所以我也测试一下,并记录在此。
运行效果如下,点击一处列表框里内容即可编辑,但我剪辑图时剪辑不到编辑状态。
我的运行环境是vc2010,下面开始讲解过程:
重点内容:
1)List Control控件NM_DCLICK消息响应事件;
2)Edit Control的KillFocus消息响应;
3)Edit Control的动态显示及隐藏;
4)List Control获取指定行和列的编号,并获取指定行和列的内容及修改赋值。
操作:
1、创建基于对话框的MFC应用程序,删除原有的静态文本;
2、添加一个List Control控件和一个Edit Control控件,并分别关联控制变量m_ListTem和m_EditTest(List Control控件适当调整大小,Edit Control大小不用调整);
3、初始化对话框函数OnInitDialog中实现List Control控件和Edit Control控件的初始化, InitList(); UpdateList();
代码如下:
BOOL CListCtrlTestDlg::OnInitDialog() { CDialogEx::OnInitDialog(); // Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon // TODO: Add extra initialization here InitList(); UpdateList(); return TRUE; // return TRUE unless you set the focus to a control } void CListCtrlTestDlg::InitList(void) { Clayer layer={"zhang",1.3,15.6,88}; m_layer.push_back(layer); Clayer layer1={"Li",22.3,25.6,288}; m_layer.push_back(layer1); Clayer layer2={"Wang",32.33,35.6,388}; m_layer.push_back(layer2); m_EditTest.ShowWindow(SW_HIDE); CRect rect; m_ListTem.GetClientRect(&rect); int iLength = rect.Width(); m_ListTem.SetExtendedStyle(m_ListTem.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES); m_ListTem.InsertColumn(0, _T("编号"), LVCFMT_CENTER, 40); m_ListTem.InsertColumn(1, _T("名字"), LVCFMT_CENTER, 80); m_ListTem.InsertColumn(2, _T("x"), LVCFMT_CENTER, (iLength - 120)/3); m_ListTem.InsertColumn(3, _T("y"), LVCFMT_CENTER, (iLength - 120)/3); m_ListTem.InsertColumn(4, _T("旋转角度"), LVCFMT_CENTER, (iLength - 120)/3); } void CListCtrlTestDlg::UpdateList(void) { CString index,x,y,z,name,count,rotate,blocks; while(m_ListTem.GetItemCount()>0) m_ListTem.DeleteItem(0); for(int i=0;i<m_layer.size();i++) { index.Format("%d",i); Clayer& layer=m_layer[i]; name=layer.name; x.Format("%.2f",layer.x); y.Format("%.2f",layer.y); count.Format("%d",layer.count); m_ListTem.InsertItem(i,index); m_ListTem.SetItemText(i,1,name); m_ListTem.SetItemText(i,2,x); m_ListTem.SetItemText(i,3,y); m_ListTem.SetItemText(i,4,count); } }
在h 文件中定义层参数结构,并定义层参数向量m_layer.
typedef struct {CString name;float x;float y;int count;} Clayer;
std::vector<Clayer> m_layer;
有上面,上面代码才不报错。这里完成了初始显示,应该可以得到开头的效果,但不能编辑。
动态编辑的核心
4、对话框头文件中添加int型变量m_Row和m_Col,用于保存双击时选中的行和列号,并初始化为-1(未选中状态);
5、为List Control控件添加NM_DBLCLK消息响应,并添加代码如下:
void CListCtrlTestDlg::OnDblclkList2(NMHDR *pNMHDR, LRESULT *pResult) { LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR); // TODO: Add your control notification handler code here CRect rc; CString strTemp; NM_LISTVIEW *pNMListView = (NM_LISTVIEW *)pNMHDR; m_Row = pNMListView->iItem; m_Col = pNMListView->iSubItem; if (pNMListView->iItem == -1) //选择空白处 return; if (m_Col != 0) // 选择子项 { m_ListTem.GetSubItemRect(m_Row, m_Col, LVIR_LABEL, rc); m_EditTest.SetParent(&m_ListTem); m_EditTest.MoveWindow(rc); m_EditTest.SetWindowText(m_ListTem.GetItemText(m_Row, m_Col)); m_EditTest.ShowWindow(SW_SHOW); m_EditTest.SetFocus();//设置Edit焦点 m_EditTest.ShowCaret();//显示光标 m_EditTest.SetSel(0, -1);//全选 } *pResult = 0; }
6、为Edit Control控件添加EN_KILLFOCUS消息响应,并添加代码如下:
void CListCtrlTestDlg::OnKillfocusEdit1() { // TODO: Add your control notification handler code here CString str; m_EditTest.GetWindowText(str); m_ListTem.SetItemText(m_Row, m_Col, str); //这里其实应该保存编辑结果,简化了,实际程序要有改变参数 m_EditTest.ShowWindow(SW_HIDE); }
现在可以编译运行并测试程序了,应该就是我们开头的结果。
改进
输入完数据后,一般希望回车,就生效,可实际情况是要离开才生效,有点操作不方便。
编辑框怎么相应回车呢?
类精灵CListCtrlTestDlg里转到 Virtual function,点击添加 PreTranslateMessage
编辑PreTranslateMessage函数如下:
BOOL CListCtrlTestDlg::PreTranslateMessage(MSG* pMsg) { if (WM_KEYDOWN ==pMsg->message && VK_RETURN == pMsg->wParam) { if (m_EditTest.IsWindowVisible()) { m_EditTest.ShowWindow(SW_HIDE); return TRUE; } } return CDialogEx::PreTranslateMessage(pMsg); }
这段代码的含义是:在按下回车键时, 如果编辑框是可见的,就让编辑框不显示。编辑框不显示就触发EN_KILLFOCUS消息。达到回车就保存的目的。
-
VB中关于LIST列表框的使用
2019-01-29 14:35:421.点击鼠标的左键,添加项目。点击鼠标的右键删除项目 -
VBA自学应用(10)——给组合框或列表框添加元素
2020-01-07 19:14:29给组合框或列表框添加元素一、RowSource属性添加元素二、为工作表中的ActiveX控件中的列表框添加元素三、使用list属性添加元素四、使用additem方法添加列表项五、列表框的其他属性 一、RowSource属性添加元素 ... -
MFC列表框 添加删除修改设备列表
2012-06-14 09:47:36显示一个设备列表,可以添加删除设备,修改设备信息。 双击设备时显示设备信息。 -
uniapp IndexedList索引列表添加搜索框
2020-12-10 17:26:00最近做uniapp项目时,用到了IndexedList索引列表这个组件,但是需要添加一个搜索功能,于是呢我就尝试着在组件上面自己改一下。下面我就简单介绍一下: 所需组件 其实也就是两个,首先是indexedLIst索引组件,其次... -
在ListCtrl列表控件中添加edit和combo
2012-10-16 21:51:19在listctrl中添加edit控件和combo box控件 vc6编译通过,封装成类便于复用 -
MFC-控件-点击按钮文本框内容添加到列表框中
2019-12-03 17:37:36void Ckongjian22Dlg::OnBnClickedOk() { CString text; //得到文本框对像 CEdit * edit=(CEdit*)GetDlgItem(IDC_EDIT1); edit->GetWindowText(text);... //将文本框添加到列表框中 CList... -
2.3 组合框(Combo Box)和列表框(List Box)使用实例
2017-08-21 09:36:04组合框和列表框都可以在界面上同时显示多项内容,并且允许用户选中其中的某项内容,列表框还允许同时选择多项。这两种控件的使用,有很多相似之处;2.3.1 技术要点: Windows 中预先定义了一系列“CB_ ”开头的消息... -
mfc 列表框行颜色设置方法
2019-09-11 14:04:15指定改变CListCtrl中某一行的颜色,比如说刚添加进去的一行,让它改变颜色,这样记录多了,容易看到自己刚刚加入的行,方便操作可查看,也可以让添加和...新建一个mfc 对话框工程,并添加列表框控件,添加一些数据... -
使用Vue实现下拉列表框批量添加选项
2020-01-18 15:37:38使用Vue实现下拉列表框批量添加选项,设置被选中的值。 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>学习Vue</title> <!-- 使用CDN... -
MFC实现的多选的列表框ListBox
2011-10-20 23:05:00左边的“待选的历史人物”列表框包含历史人物的名字,当选中人名并单击“添加”按钮,则名字会被添加到右边的“你喜欢的历史人物”列表框,同时从左侧的列表框中删除;当选中“你喜欢的历史人物”列表框中的人名并... -
C# ListBox:列表框控件
2019-06-11 22:26:10列表框 (ListBox) 将所提供的内容以列表的形式显示出来, 并可以选择其中的一项或多项内容,从形式上比使用复选框更好一些。 列表框中常用属性: ... 例如Items.Add方法用于向列表框中添加项,... -
MFC--列表框
2021-11-12 09:44:26添加列表框控件 添加列表框选项 添加消息 添加变量 编辑消息 BOOL CMydlg::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here m_list.AddString("苹果"); m_... -
Qt QListWidget列表框用法详解
2022-01-25 13:30:02Qt QListWidget列表框用法详解 很多应用程序中需要以列表的形式向用户展示数据(资源),比如 Windows 操作系统会以列表的方式展示很多张桌面背景图(如图 1a) 所示),再比如很多音乐播放器中以列表的形式展示音乐... -
在文本框中输入内容,点击“添加”按钮后添加到列表框中;点击“删除”按钮则从列表框中删除选中的元素。
2020-04-17 11:26:29在文本框中输入内容,点击“添加”按钮后添加到列表框中;点击“删除”按钮则从列表框中删除选中的元素。 protected void Button1_Click(object sender, EventArgs e) { // ListBox1.Text= TextBox1.Text+ ... -
MFC 下拉列表框的设置
2019-11-06 10:33:27设置下拉列表框: 步骤1:打开VS2015,新建项目工程,选择模块下的Visual C++-->MFC-->MFC应用程序,设定好项目文件名和路径,点击确定。 步骤2:进入应用程序类 型界面。勾选“基于对话框”,在“MFC的... -
C++文件操作(4)--MFC实现将编辑框和列表框内容写入文件
2020-12-24 00:19:47本篇文章主要讲解并实例演示如何将编辑框CEdit和列表框CListBox中的内容写入文件 一.实现控件 按照如图布局控件。 对每个控件进行类绑定,右键控件类向导点击添加处理程序。 二.代码实现 生成文件按钮添加代码: ... -
LabVIEW多列列表框简单玩法
2022-04-15 22:22:46多列列表框简单玩法 -
列表框的selected属性
2021-06-10 17:17:36Φ是什么意思?读"fai".是直径的意思不?...而用作列表框和组合框有没有select属性列表框有selected,表示是否选中:If List1.Selected(i) Then 组合框只允许选一个,没有select,Combo1.ListIndex即为当前选中... -
VS2019/MFC编程入门:列表框控件ListBox及其实例
2021-03-17 09:19:11本文要讲的是列表框控件(ListBox)及其使用实例。 Xtreme Toolkit Pro是屡获殊荣的VC界面库,是MFC开发中最全面界面控件套包,它提供了Windows开发所需要的11种主流的Visual C++ MFC控件,包括Command Bars、... -
JavaScript实现下拉列表框添加选项
2019-10-18 12:40:27效果展示 代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <...select name="list" id="list"> <option>请选择&... -
list control双击事件编辑列表框
2018-06-01 11:21:061、目标:实现在双击列表框时的动态修改,包括: 1)双击空白处时自动添加一行; 2)双击已有数据时使用显示编辑框实现动态修改子项。 2、重点内容: 1)List Control控件NM_DCLICK消息响应事件; 2)Edit ... -
Unity UGUI 基础 之 DropDown(下拉列表框) 的简单使用(简单改变样式/动态下来列表的数据添加删除/列表...
2020-09-11 15:45:01Unity UGUI 基础 之 DropDown(下拉列表框) 的简单使用(简单改变样式/动态下来列表的数据添加删除/列表事件监听等) 一、简单介绍 UGUI,是Unity自带的 GUI 系统,有别于 NGUI;使用 UGUI 也能制作出比较酷炫... -
VC++ MFC List创建列表用法
2018-05-06 10:35:452、在类初始化函数添加List的初始化操作 2.1设置List的数据形式 m_List.InsertColumn(0, _T("列")); m_List.InsertColumn(1, _T("行")); m_List.InsertColumn(2, _T("扫描内容"))... -
VB 组合框添加不重复内容
2010-08-19 20:42:12可以添加不重复的内容,添加到组合框列表中。 -
C#窗体--下拉列表框和列表框的增删改
2020-11-03 10:32:40下拉列表框 public Form2() { InitializeComponent();//由系统生成的对于窗体界面的定义方法,初始化窗体组件的 } public int index = -1;//设置 public int index1 = -1; public int index2 = -1; private ...