0
タイトルで言われているように、私はトラックバーを使ってペンの幅のサイズを大きくしようとしています。 これは私がこれまでに書かれたものです:ペンの幅をトラックバーの値で大きくする
public partial class Form26_10 : Form
{
float scrollValue = 0F;
Pen CustomPen = new Pen(Color.Black, scrollValue);//ERROR<-
public Form26_10()
{
InitializeComponent();
}
private void trackBar1_Scroll(object sender, EventArgs e)
{
scrollValue = trackBar1.Value;
}
}本質的
私は、その後、メモリ内の値を宣言したペン幅パラメータでそれを持っているので、トラックバーの値の変更だ時にすることができるはずペンの幅が変わります。私はこのエラーを取得していますが:
a field initializer cannot reference the non-static field, method or property of 'Form.scrollValue'
これは間違ったアプローチです。必要なときにペンオブジェクトを作成するだけです。 usingステートメント。この時点で、コンストラクタでtrackBar1.Valueを使用することができ、適切な値を持ちます。 trackBar1_Scrollが行う必要があるのは、Invalidate()を呼び出して、ペンを使用しているコードがすべて再実行されるようにすることだけです。 –