2016-08-28 3 views
2

C#でボタンをアニメーション化したい。ですから、私はHoverMouseBut()というメソッドを次のように作成します。ボタンエフェクトを変更するメソッドを作成する#

public void HoverMouseBut(Button name,Image img, int w, int h) 
{ 
    name.Image = Resources.img; 
    name.ForeColor = Color.FromArgb(232, 126, 4); 
    name.Size = new Size(w, h); 
    name.Font = new Font("Segoe UI", 12, FontStyle.Regular); 
    name.TextAlign = ContentAlignment.BottomCenter; 
    name.ImageAlign = ContentAlignment.MiddleCenter; 
} 

私はこの方法を以下のように呼んだ。

private void addo_MouseHover(object sender, EventArgs e) 
{ 

    HoverMouseBut(addo,Add2,250,160); 

} 

これは私に構文エラーをもたらしました。私はイメージパラメータなしでメソッドを変更して見ました。それがうまくいったのですが、ボタンのイメージも変更したいのですが、どうすればいいですか?私のコードで何が間違っていますか?

* Add2はリソース内のイメージです。

+1

が見えます= img; '? – khargoosh

答えて

1

働くかもしれないname.Image = imgにそれを変更するとフォームがC#で他のプロパティのようなものです。したがって、あなたはそれを行うためのさまざまな選択肢があります。最も簡単なものの 一つは、それは置いても意味があなたの第二の形式であなたの必要なタイプのパブリックプロパティを持っているし、あなたのForm2があなたのフィールドなしでは存在できない場合は、

class Form2 
{ 
public string myStringField{get;set;} 
} 

class Form1 
{ 
myMethod() 
{ 
.... 
var newForm= new Form2(); 
newForm.myStringField="Something"; 
} 
} 

しかし、データを渡すためにそれを使用することです`name.Image:おそらくあなたは、単に` img`パラメータに設定するべきである - あなたは常に `Resources.img`に` Button.Image`プロパティを設定しているようなあなたのコンストラクタに提出

class Form2 
{ 
    public Form2 (string myStringField) 
{...} 
} 
class Form1 
{ 
myMethod() 
{ 
.... 
var newForm= new Form2("Something"); 

} 
} 
1

Imageを使用する方法に画像を渡そうとしている場合、なぜname.Image = Resources.imgを設定しましたか?

あなたはC#を使用している

関連する問題