作者sqrt1089 (李崩子)
看板C_Sharp
标题[问题] 开启 panel 算是触发控制吗?
时间Mon Sep 9 13:30:11 2013
是这样的,
我做了一个介面,目前是三页,如图:
http://ppt.cc/9a73
第一页是使用者的参数设定,当使用者输入完参数後,按GO去执行。
第二页跟第三页结果页面。
我目前要先弄懂的部分就是 :按GO是否能把值丢到第二页去运算
所以我先DEBUG "GO"这颗钮,
看按下去会不会去做我的test code (单纯画一条线跟输出一段字)
=================================================
我在button1下的code是 (画一条斜线跟输出一段字)
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = "请输入数字";
Graphics VerticalGrid = this.panel1.CreateGraphics();
Pen bigline = new Pen(Color.Blue, 3);
VerticalGrid.DrawLine(bigline, 50, 50, 100, 100);
}
还没按GO之前:
http://ppt.cc/gIih,框框没东西 (框框的Name 是 textBox1)
按下GO後却只有第一行有执行,结果:
http://ppt.cc/MW-5
却没有画线,是不是因为我按GO之後,又按了上面的panel(换到第二页看输出)
是控制钮被盖过去?
因为我又把原本的code 移到 panel下就有了,如图:
http://ppt.cc/GD10
(当我切换到第二页就会执行这段code吧)
code:
private void panel1_Paint(object sender, PaintEventArgs e)
{
textBox1.Text = "请输入数字";
Graphics VerticalGrid = this.panel1.CreateGraphics();
Pen bigline = new Pen(Color.Blue, 3);
VerticalGrid.DrawLine(bigline, 50, 50, 100, 100);
}
============================更新============================
之後我在第二页又新增一个 button,如图:
http://ppt.cc/n~rq
code如下:
private void button2_Click(object sender, EventArgs e)
{
textBox1.Text = "请输入数字";
Graphics VerticalGrid = this.panel1.CreateGraphics();
Pen bigline = new Pen(Color.Blue, 3);
VerticalGrid.DrawLine(bigline, 50, 50, 100, 100);
}
button2 执行前:
http://ppt.cc/Bzqf
button2 执行後:
http://ppt.cc/Ldih 却又可以
我要问的问题是:当我按第一页的GO後(button1)如何切换到第二页看结果。
也就是执行 button1下的code
(似乎按了第二页那个动作就把原本的button1盖过去了)
小弟在这先谢大家。
我是要把原本matlab上的UI介面移植到C#上,所以C#算是刚学。有在K书中
并不是伸手牌。
--
--
▂▂ ▂▂▂
▂▄▅▅▄▆█ _█◣
◢ (●) ◣/\\
丫 │◥  ̄◤
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.20.14
※ 编辑: sqrt1089 来自: 140.116.20.14 (09/09 13:33)
※ 编辑: sqrt1089 来自: 140.116.20.14 (09/09 13:39)
1F:→ Litfal:你在换tab时,会Refresh,就把之前画的东西清掉了。 09/09 15:12
2F:→ Litfal:Paint event则是每次refresh都会触发,所以会持续显示。 09/09 15:12
3F:→ Litfal:你可以用PaintEvent。或是自己建立一个Bitmap,在结果Panel 09/09 15:16
4F:→ Litfal:里面拉一个PictureBox,用picbox.Image=bmp; 去指定图。 09/09 15:17
5F:→ Litfal:最後再用Graphics.FromImage(bmp); 来操作图像。 09/09 15:19