我正在编写一个 QML 文件浏览器。现在,我想实现一个后退和前进功能。此功能类似于浏览器的后退和前进功能。例子 :
我从“/home/text/folder1”开始并浏览到“/home/text/folder1/src”。现在我浏览到“/home/text/folder1/src/java”。如果我按两次,我应该在“/home/text/folder1”,我不能再按回(按钮应该是灰色的或以其他方式表明没有更多的“以前的”项目要显示)。
我正在考虑通过双链表来实现这一点。但是,我很难理解我应该在哪里插入新项目到列表中,以及何时应该这样做。
以前面的例子为例:如果不是按两次,我只按一次(我现在在“/home/text/folder1/src”中)。如果我突然转到 "/home/text/folder2" ,现在怎么办?我的双链表现在应该如何?
这是一个数据结构问题,而不是实现,因此不需要代码。