0

スライドショー機能をサポートするために画像ビューアを拡張しています。split containerメインフォームを2つのパネルに分割するためにを使用しました。

  • 左側のパネルにはサムネイルのリストが含まれます
  • 右側のパネルにはフルサイズの画像が含まれます

各パネルはドラッグアンドドロップをサポートしています。画像ファイルをサムネイルパネルにドロップすると、サムネイルが作成され、パネルに表示されます。上から順に、ドロップされる画像が増えるにつれて下に向かっていきます。デフォルトでは、利用可能な最初の画像が右側のパネルに表示されます。

別のサムネイルを選択すると、ビューアにフルサイズの画像が表示されます。

このサムネイルのリストを実装するための良い方法は何ですか?使用可能なコントロールのリストを確認しましたが、どれがこれに最も適しているかを判断できません。

PictureBoxオブジェクトを動的に作成することを考えていましたが、Clickイベントを登録した後、イベントの送信元のPictureBoxをどのように識別するかがわかりませんでした。

私は2つの可能なタイプの答えのうちの1つを探しています

  • PictureBoxの作成のアイデアを進めますが、目的の画像を正しく表示するには、Clickイベントをどのように処理する必要があるかを理解しています。
  • 親指のリストを表示するための代替案(PictureBoxのアイデアが実行可能でない場合)
4

1 に答える 1

1

イベント ハンドラーを関連付けて複数のコントロールを作成し、"sender" パラメーターでそれらを識別できます。常にイベント送信者を指します。

void OnClick(object sender, KeyEventArgs e) {
    PictureEdit editor = (PictureEdit)sender;
}

Sub OnClick(ByVal sender As Object, ByVal e As KeyEventArgs)
    Dim editor as PictureEdit = CType(sender, PictureEdit)
End Sub

または、イメージを表示する長方形の領域に分割された独自の (それほど複雑ではない) コントロールを作成することもできます。

于 2012-07-27T00:43:33.927 に答える