作者cczeke (阿其)
看板C_Sharp
标题[问题] 请问宣告出新的pictureBox後 要如何在其他的涵式中使用 ?
时间Wed Mar 12 13:50:23 2008
请问如果在 button1_click中宣告出新的pictureBox元件
如下:
private void button1_Click(object sender, EventArgs e)
{
PictureBox pic = new PictureBox();
pic.SizeMode = PictureBoxSizeMode.StretchImage;
pic.Location = new Point(12, 12);
pic.Size = new Size(300, 300);
pic.Image = Image.FromFile(openFileDialog1.FileName);
this.Controls.Add(pic);
}
之後 如果想要在 button2_click 事件
继续使用已经宣告过的 pic 元件
我是写成这样
private void button2_Click(object sender, EventArgs e)
{
pic.Image = FromFile(String filename);
}
想要按下button2之後 会在pic中显示出 String filename 的图
可是侦错之後 complier 会告诉我 『名称 'pic' 不存在於目前的内容中』
请问是那里没写好
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.179.140
※ 编辑: cczeke 来自: 140.116.179.140 (03/12 13:51)
1F:推 reptile0426:你换个角度想,要是你先按button2,会发生什麽事呢? 03/12 13:54
2F:→ cczeke:我有想过 就是button2里的 pic 还没被宣告 03/12 14:00
3F:→ cczeke:我本来是想说要加个public之类的 让其他涵式也能存取 03/12 14:00
4F:→ cczeke:可是如果加 public 会发生语法上的错误 03/12 14:01
5F:→ cczeke:我现在是在想 是不是要用static的方式来宣告 03/12 14:01
6F:→ cczeke:只是我还不知道该怎麽下手 >"< 03/12 14:01
7F:推 reptile0426:把他设为全域变数吧 03/12 14:06
8F:→ cczeke:可是C# 不是不允许设为全域变数吗? 好像只能宣告在class里 03/12 14:14
9F:→ cczeke:还是说要宣告在 Form1.Desinger.cs 的档案里? 03/12 14:15
10F:→ cczeke:我好像知道该把全域变数放在那里了 感谢您 >"< 03/12 14:17
11F:→ qweqweqweqwe:先去抓动态产生出来的物件PictureBox? 03/12 16:25
12F:→ tamuchang:button1_Click和button2_click的pic是完全没关系的, 03/17 17:28