gpt4 book ai didi

c# - 确定列表中当前指向的项目

转载 作者:行者123 更新时间:2023-11-30 22:22:22 25 4
gpt4 key购买 nike

我正在处理列表。我已经能够确定列表中项目的第一个和最后一个位置。我正在使用 getPostion 并通过 Label 显示项目名称。我表单中的三个按钮:ShowFirstItem ShowNextItem(不起作用)和 ShowLastItem 在标签中显示相应的项目。我的下一件商品有问题。我没有持有当前 fruit_tree 的成员。所以我不确定如何添加 int 成员或另一个名为 currentfruit_tree 成员。我怎样才能找到下一个(第一个之后的项目)并显示结果?

 public class ListForTrees
{

public fruit_trees GetNextTree()
{
current = 0;
fruit_trees ft = first_tree;
int i = 0;
while (i != current)
{
ft = ft.next_tree;
i++;

}

return ft;
}

}

ListForTrees mainlist = new ListForTrees();

private void BtnGo_Click(object sender, EventArgs e)
{
fruit_trees[] ar_items = { new fruit_trees("cherry", 48, 12.95, 3),
new fruit_trees("pine", 36, 9.95, 8),
new fruit_trees("oak", 60, 14.95, 2),
new fruit_trees("peach", 54, 19.95, 3),
new fruit_trees("pear", 36, 11.85, 2),
new fruit_trees("apple", 62, 13.45, 5)
};
mainlist = new ListForTrees(ar_items);
fruit_trees current = mainlist.first_tree;

while (current != null)
{
TxtOutput.AppendText(current.ToString() + Environment.NewLine);
current = current.next_tree;
}
}


private void ShowFirstItem_Click_1(object sender, EventArgs e)
{
// Show First Item
labelSpecificTree.Text = mainlist.first_tree.GetTreeType;

}

private void ShowLastItem_Click(object sender, EventArgs e)
{
//Show Last Item
labelSpecificTree.Text = mainlist.last_tree.GetTreeType;
}

private void ShowNextItem_Click(object sender, EventArgs e)
{
//Show Next Item
fruit_trees obj = mainlist.GetNextTree();

if (obj == null)
{
labelSpecificTree.Text = "No more trees!";
}
else
{
mainlist.current++;
labelSpecificTree.Text = obj.next_tree.GetTreeType.ToString();
}
}



}

最佳答案

我要补充

public int current; 

到树列表。在构造函数中将其设置为 0;

然后创建一个方法返回当前的fruit_trees对象

public fruit_trees getCurrent()
{
fruit_trees ft = first_tree;
int i = 0;
while(i != current)
{
ft = ft.next_tree;
i++;
}
return ft;
}

现在这个方法返回当前对象而不是下一个对象。所以你在下一个按钮事件中有 2 个选项。
这里的问题是每次单击按钮时是否要移动到下一个树对象?如果是这样增加当前属性,然后调用 getcurrent 来显示。如果您希望保留电流而不移动(即一遍又一遍地单击下一步将导致相同的结果)然后显示 getcurrent().next_tree.tree_type 没有增量到当前。

关于c# - 确定列表中当前指向的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13868380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com