問題タブ [qfilesystemmodel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - QFileSystemModel を介して選択したファイルの *full* ファイルパスを取得する方法は?
QFileSystemModel 経由でファイルパスを取得するには? 選択モデルによる選択では、ファイル名またはドライブ名のみが返されます。
ファイル名だけでは不十分であることに注意してください。ファイルパス全体が必要です。
c++ - QFileSystemModel::filepath の奇妙な動作
私は QFileSystemModel を選択しましたが、今は次のようにしてそれらのパスを選択しようとしています:
しかし、ここでの結果は私の選択を反映していません。たとえば、ドライブ D、ドライブ C のファイル、および C のフォルダー内の別のファイルを選択すると、
結果 == "D", "D", "someFile on c" が得られます。
「D」が2度目に選ばれた理由は?
c++ - QFileSystemModel によるドライブの選択
ドライブを選択すると、「D」と言ってこれを介して保存するとfilePath(QModelIndex)
、Windowsでは認識されませんD:\
が、D:
これは私が学んだ2つの異なることです。filePath
from をQFileSystemModel
実際のパス (選択しているパス) に戻す 方法はありますか?
c++ - 正しい拡張子のファイルのみを表示する
私は QFileSystemModel で、拡張子を持つファイルと*.txt
他のタイプのファイルだけを表示しようとしています:
proxy_
タイプは QSortFilterProxyModel ですmodel_
タイプは QFileSystemModel です
これが私のコードです:
...しかし、そうすることによって、私のビューには何も表示されません。誰が私が間違っているのか知っていますか?
c++ - ファイルを表示しない QFileSystemModel (ディレクトリのみ)
ディレクトリだけを表示するように QFileSystemModel を設定するにはどうすればよいですか?
それとも、これはまったく不可能ですか?
c++ - QFileSystemModelのファイルは灰色です
次のフィルターを使用してQFileSystemModelを設定しています。
私のプロキシモデルでは、正規表現を使用してファイルを名前でフィルタリングしています。
....そして、mymodel_
がQFileSystemModelである場合、次の行があります。
...まだ表示されているファイルはグレー表示されています。なぜ、そしてどのようにそれらを「正常」にするか。
qtreeview - QFileSystemModel にカスタム行を追加するには?
QFileSystemModel を使用して、QTreView を介してファイル構造を表しています。すべて正常に動作しますが、ツリーのあるレベルに行を追加する必要があります。たとえば、今のところは次のとおりです。
-根
--row1
--row2
--row3
これらすべての行は、ファイル システムからフォルダー/ファイルをマッピングします。私は欲しい:
-根
--row1
--row2
--row3
--カスタム行
そのため、カスタム行はファイル システムからのデータを表していません。ここに自分のデータを追加するだけです。私はインターネットから多くのものを読み、プロキシモデルを使用してrowCount()、data()、およびflags()関数を再実装するよう人々にアドバイスしました。私はそれをやろうとしました(QSortFilterProxyModelから派生したクラスを使用しました)が、data()およびflags()関数で行を取得できませんでした。ソースモデルから数がかかるようです。
QSortFilterProxyModel() のフィルタリング関数が必要なため、QAbstractProxyModel から派生したクラスを使用することはできません。
また、QFileSystemModel の rowCount() を再実装してモデルを直接変更しようとしましたが、QT コードから「範囲外の配列」エラーが発生しています。
insertRow() メソッドを試しましたが、機能しません。QFileSystemModel が読み取り専用だからだと思います。
誰かがこの問題に直面しましたか? 何か案は?
python - PyQt : QTreeView で編集可能な QFileSystemModel
ファイルシステムにこれがあります:
- TreeView 内で、フォルダー"myFolder"を展開します。
- 次に、名前を"myFolder_2"に変更します。
- 最後に、フォルダー「mySubFolder」の名前を「 mySubFolder_2」に変更しようとしました。
"mySubFolder_2"はフォルダーとは見なされなくなりましたが、サイズが -1 バイトで不明であり、次のメッセージが表示されます: QFileSystemWatcher: パスの追加に失敗しました: myFolder。
ここに私のソースコードがあります:
どんな助けでも大歓迎です。
pyqt4 - QFileSystemModelからファイルパスを抽出する方法は?
上記のコードを実行すると、次のエラーが発生します
qt - QTreeView / QFileSystemModel: ツリーの深さを制限するにはどうすればよいですか?
モデルとして QFileSystemModel を持つ QTreeView があります。
木の深さを制限する方法がわかりません。私はそれがモデルの機能だと思っていたでしょうか?
たとえば、深さを 1 に設定すると、最上位のアイテムのみが表示されます (つまり、フォルダーの展開ボタンは表示されません)。
深さが 1 の場合、ツリーは、Windows エクスプローラーの泥沼標準の詳細ビューのように見えます。
PySide を使用していますが、PyQt または C++ での回答は理解できます。