更改娜娜列表框中的值
Change value in nana listbox
我正在尝试创建一个带有属性网格的 GUI(名称:值对网格(
列表框小部件似乎是开始的方式。(如果有更好的东西,请纠正我(
我编写的代码(下面(编译并运行。初始名称/值对显示正常,但尝试更改第一项的值一无所获。
我已经查看了几个列表框示例,但是在初始化后找不到更改列表框中值的简单方法
int main()
{
using namespace nana;
// form to hold everything
form fm;
// listbox to be the property grid
listbox lb(fm, nana::rectangle(10, 10, 280, 120));
// column headers
lb.append_header("Name", 200);
lb.append_header("Value", 200);
// add two items to the default category
lb.at(0).append({"A", "0"});
lb.at(0).append({"B", "0"});
// change value of A item to 32 ( fails to do anything )
lb.at(listbox::index_pair(0,1)).value("32");
fm.show();
exec();
}
也尝试过(不编译(
lb.at(listbox::index_pair(0,1)).value({"A","32"});
和(运行,没有效果(
lb.anyobj(0, 0, "32");
您正在使用非常低级的函数。有更方便的高级函数来设置/更改列表框中的值/文本/项(使用 STL 容器或解析程序(。
假设你想使用这些低级函数,因为你想实现你自己的高级API,这里有一些事实:
您访问at
(index_pair( 的item_proxy
的value
功能将允许您访问您之前附加到该项目的某个对象。您尚未附加任何对象。您可以有效地首先附加一个对象,也可以继续直接处理文本。最简单的"hack"是使用函数text:lb.at(listbox::index_pair(0,1)).text(1,"32")
,它为该项目的第1列设置文本。
编辑:一个相对简单易懂的解释:3种方法将数据插入列表框
相关文章:
- Pybind11:将元组列表从Python传递到C++
- 从链接列表c++中删除一个项目
- 如何(从固定列表中)选择一个数字序列,该序列将与目标数字相加
- C++如何通过用户输入删除列表元素
- 读取文件的最后一行并输入到链接列表时出错
- 复制列表初始化的隐式转换的等级是多少
- LNK2038、MSVS2017 MAGMA的原因列表
- 不能在初始值设定项列表中将非常量表达式从类型 'int' 缩小到'unsigned long long'
- 没有为自己的结构调用列表推回方法
- 使用简单类型列表实现的指数编译时间.为什么
- 一对向量构造函数:初始值设定项列表与显式构造
- 标准是否使用多余的大括号(例如 T{{{10}}})定义列表初始化?
- 通过for循环使用用户输入填充列表
- 如何在 macOS 卡塔琳娜上解决此错误?
- 与卡特琳娜一起卷曲C++失败并得到"Undefined symbols for architecture x86_64"
- 如何何时<>性状在提升。哈娜工作?
- C++娜娜 如何从全局列表框*指针访问列表框内的索引 0 上的按钮?
- 更改娜娜列表框中的值
- 为什么这个斯芬娜不起作用
- 提升哈娜any_of