web-dev-qa-db-ja.com

名前を変更するときにフォルダへのフルパスを表示する

ユーザーが特定のフォルダの新しい名前を入力できるフォームがあります。問題の原因となる情報提供の目的で、完全なフォルダーパスがフォームに表示されます。

パスが非常に長いからといって、フォームの幅をあまり広げないでください。そこで、水平スクロールバーを備えた読み取り専用のテキストボックスにパスを入れました。

それはうまく機能し、許容できるように見えますが、これを解決する方法についてもっと良いアイデアがある人がいるかどうか疑問に思っていました。

新しい名前フォーム、スクロールなし

New name form, no scroll

新しい名前フォーム、スクロール

New name form, scroll

8
mariu5

ここには多くの問題があります。

  1. 入力コントロールは、データを表示するためのものではなく、入力のためのものです。無効にしたテキストボックスを表示すると、ユーザーはそれが有効にできる場合があることを理解しています。フォルダーパスには読み取り専用のテキストボックスを使用する必要があります。

  2. [新しい名前]フィールドに現在の名前を入力し、フォルダ名という名前を付けることをお勧めします。

  3. グループボックスは実際にはもう使用されていませんが、傾向に関係なく、使用されている場合はコントロールをグループ化するためのものです。グループ化するものがないため、単一のコントロールを含むグループボックスは、99%のケースで冗長です。

  4. 確認ボタンがある場合は、通常、キャンセルボタンを追加することをお勧めします。 右上のXでは不十分

mockup

download bmml sourceBalsamiq Mockups で作成されたワイヤーフレーム

14

スクロールが不要になり、テキストボックスにフォーカスがない場合はフォルダーパスが切り捨てられ、最後に省略記号(...)が表示されます。

テキストボックスにフォーカスがある場合、1行のエディットボックスではなく、複数行のエディットボックスを表示します。

9
Franchesca

のような文字列を作成する関数があったことを覚えています

D:\Folder\...\CurrentFolder

パラメータは、ピクセル単位の長さ、またはパスが収まるWindowsコンポーネントでさえあると思います。申し訳ありませんが、これ以上覚えていませんが、誰かが私が何を言っているのか知っています。

次のステップは、クリック可能にし、Wordラップでフルネームを表示することです。次の短縮されたディレクトリを想像して、すべてのプロジェクトにドキュメントがあると仮定します。

D:\Projects\....\documents\

または、完全なパスをヒントとして表示することもできます。

そして、最後に重要なことですが、ソフトウェアからすべてのサイズの制約を削除する必要があります。これは、使用されるシステムの種類がわからないためです。翻訳、フォントサイズ、dpiサイズなどについて考えてみてください。

もう1つの議論:自由意志!ユーザーは、パスを2560x100ウィンドウに表示するか、400x400として表示するかを決定できる必要があります。人々は常に大きな画面を表示し、小さなボックスに必要な情報が表示されていないのは煩わしいだけです。

4
anna

あなたができることはそれを持っているので、部分的なフォルダパスが最初に次のように表示されます:D:\ Folder\Folder\Folder\FolderD:...フォルダーフルパスを表示するオプション付きユーザーが本当に見たい場合。しかし、マットが述べたように、彼らは場所と単に名前を変更していないので、「不要な複雑化」であるかもしれません。ユーザーが完全なパスを表示するか、単純なチェックボックスを表示しないようにオプションを設定すると、スクロールバーが必ずしもプログラムに何も追加されないように見えなくなります。ただのアイデア、それが役に立てば幸いです。

1
Nick_M

あきらめる?これはあなたが解決しなければならない問題だと確信していますか? (答えはもちろんイエスかもしれません)しかし、ここからはwinformsを使用してファイルシステムと対話しているように見えます。

OpenFileDialogクラスのようなものが存在するときに、ユーザーに新しいカスタムのエキサイティングな方法でこれらのタイプの対話を行うように促すのはなぜですか?

1
Nathan Cooper

そもそもフォームを取り除くことをお勧めします。目に見える場所で何かを変更するという原則に従う場合、変更は名前がユーザーに表示される場所で行われる必要があります。 (S)彼はどういうわけかパスを下にナビゲートしました、おそらくパスはまだそこに見ることができます、そしてこれは変化が起こるべき状況です。ユーザーを現在のコンテキストから外さないでください。

たとえば、Windowsエクスプローラーがこれを行います。ファイル名にフォーカスがあるときにF2を押すだけです。

0
virtualnobi