いつもお世話になります。
C#について質問です。VisualC#2008を使っています。
private PictureBox[] pictArray = new PictureBox[100];
private void Box_Load()
{
PictureBox pict;
int nIdx = 0;
while (nIdx < pictArray.Length)
{
pict = new PictureBox();
pictArray[nIdx] = pict;
pict.Click += new EventHandler(pict_Click);
nIdx++;
}
}
のように、あるメソッドで配列にpictureboxの画像を代入(?)していく処理をしています。このメソッドを別のメソッドで呼び出し、
pictArray[1]に格納されているpicturebox
pictArray[2]に格納されているpicturebox
…といった具合に、次々と表示させていきたいと考えています。しかし1つしかpictureboxが表示されません。具体的には以下のようなプログラムを組んでいるところです。
private void pict_Click(object sender, EventArgs e)
{
Box_Load();
kihon_pict.Location = new Point(10, yy);
this.panel1.Controls.Add(pict);
yy += 40;
}
誰か解決策を教えていただけないでしょうか?
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
こんばんは。
う~む、多分、フォームと同じ「ねずみ色」だから気付かないのかもしれません。
派手な色を着色するか、枠を目立つスタイルにすれば確認出来るのではないでしょうか。
以下はボタンを押す度、ピクチャーボックスを縦に並べていきます。
//配列数は0で構わない
private PictureBox[] pictArray = new PictureBox[0];
private void button1_Click(object sender, EventArgs e)
{
this.SuspendLayout();
//配列の拡大
Array.Resize(ref this.pictArray, this.pictArray.Length + 1);
//ピクチャボックスの作成
PictureBox picture = new PictureBox();
//配列にピクチャーボックスを代入
pictArray[this.pictArray.Length - 1] = picture;
//ピクチャーボックスに名前を付ける(多分必須)
picture.Name = "picture box " + this.pictArray.Length.ToString();
//位置を指定する
picture.Location = new Point(0, 40 * (this.pictArray.Length - 1));
//大きさを指定する
picture.Size = new Size(40, 40);
//枠のスタイルを派手にする
picture.BorderStyle = BorderStyle.Fixed3D;
//色を派手にする
picture.BackColor = Color.AliceBlue;
//コントロールに追加
this.Controls.Add(picture);
this.ResumeLayout(false);
this.PerformLayout();
//ピクチャーボックスを表示する
picture.Show();
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- Visual Basic(VBA) Visual Basic : ImageListの画像がそろったときにメッセージを表示 1 2023/07/20 13:53
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- C言語・C++・C# TCP/IP通信時のサーバーからの受信 2 2022/11/23 09:11
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java java 引数 戻り値のあるメソッド 3 2023/02/12 06:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
array関数で格納した配列の型を...
-
ExcelのINDEXとMATCH関数でスピ...
-
Excelのセルの色指定をVBAから...
-
配列がとびとびである場合の書き方
-
表にフィルターをかけ、絞った...
-
[エクセル]連続する指定範囲か...
-
DataSetから、DataTableを取得...
-
エクセルで、絶対値の平均を算...
-
スプレットシートのGetTextにつ...
-
【VBA】ユーザーフォーム リス...
-
Datatableへの代入
-
Excel VBA 配列の分割について
-
.NET - 配列変数を省略可能の引...
-
仮想リストコントロールの表示
-
[VBA]改行入りのセルの値を配列...
-
エクセルVBAで変数をセルに一行...
-
【VBA】配列に数式を仕込む方法...
-
配列のSession格納、及び取得方...
-
VBAでの100万行以上のデータの...
-
VBAで指定期間の範囲を抽出し、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelのセルの色指定をVBAから...
-
array関数で格納した配列の型を...
-
ExcelのINDEXとMATCH関数でスピ...
-
[エクセル]連続する指定範囲か...
-
エクセルで、絶対値の平均を算...
-
VBA listBoxについて
-
配列がとびとびである場合の書き方
-
表にフィルターをかけ、絞った...
-
VBA 配列に格納した値の平均の...
-
[VBA]改行入りのセルの値を配列...
-
エクセルでエラーを無視して一...
-
iniファイルのキーと値を取得す...
-
二次元配列の中の各行の要素を...
-
SUMPRODUCT関数を用いた最小値
-
【VBA】ユーザーフォーム リス...
-
Split関数でLong配列に格納する...
-
【VBA】配列に数式を仕込む方法...
-
.NET - 配列変数を省略可能の引...
-
スプレットシートのGetTextにつ...
-
Excelのオートフィルタで抽出し...
おすすめ情報