私は、ステート マシンやウィザードのような事前定義された構造に基本的に従うプロジェクトに取り組んでいます。QWizard に出くわしました。その nextId() 関数は、ウィザードがさらにページを動的にロードするための良い方法のようです。ここで、以前にアクセスしたウィザードのページに戻ると非常に便利です。しかし、オーバーロードされた nextId() を使用しても、既にアクセスしたページに戻ることはできません。
アクセスしたページの履歴を消去することはできますか? または、これを行うより良い方法はありますか?
私は Python で PyQt4 による Qt を使用していますが、それだけの違いがあるはずです。私が求めていることを行う別の方法は、ウィザードに同様のページを追加し、以前のデータをこのページと共有することですが、ほとんどが C++ から来ているため、オリジナルを模倣するダミー オブジェクトを作成する方法は好きではありません。
編集: 私がやろうとしているのは、QWizard を使用してステート マシンを複製することです (ほとんどステート マシンであるため)。たとえば、ページ 1 でデータがロードされ、ページ 2 で追加の計算が行われ、ページ 1 のデータが拡張される可能性があります。戻るボタンを使用するとページ 1 に戻ることができますが、この時点で既にページ 1 にアクセスしているため、次のボタンで「戻る」ことはできません。nextId() 関数をオーバーロードして試しましたが、うまくいきません。これは、私がしたいページの循環的な順序を構築できないことを意味します。