私はvb.netプログラミングの初心者です。私はコントロールを作成することと少し混乱します。私がオンラインだとき、私は参照してください。次のコードは、交換可能に使用されているようです:vb.netはプログラムでコントロールを作成します
Dim x As Button
Dim y As New Button()
あるいは
Dim z As New System.Windows.Forms.Button()
私が変数を宣言する方法重要ですか?前もって感謝します。
私はvb.netプログラミングの初心者です。私はコントロールを作成することと少し混乱します。私がオンラインだとき、私は参照してください。次のコードは、交換可能に使用されているようです:vb.netはプログラムでコントロールを作成します
Dim x As Button
Dim y As New Button()
あるいは
Dim z As New System.Windows.Forms.Button()
私が変数を宣言する方法重要ですか?前もって感謝します。
System.windows.forms.Button
は、Button
と同じです。すでにSystem.windows.forms
名前空間がインポートされています。これはあなたが別の名前空間に独自のボタンクラスを作成していない限りですが、私はあなたが持っているかどうかは疑問です。
クラス名の後ろにある括弧は、そのクラスの未定義サイズの配列を作成します。大括弧はそのクラスのインスタンスを1つ作成していません。
new
キーワードは、コントロールの新しいインスタンスを作成するときに必要です。それがなければ、作成した変数を同じタイプの既存のオブジェクトに割り当てる必要があります。プログラムでボタンを作成する場合は、new
キーワードを使用する必要があります。
は、私はまだ混乱しているクラス http://www.homeandlearn.co.uk/net/nets11p2.html http://visualbasic.about.com/od/quicktips/qt/shared_member.htm
これは、xという名前のButton型の変数を宣言します。あなたはそれに何かを割り当てるまでそれを使うことはできません。
Dim x As Button
これはButtonをインスタンス化し、それをyに割り当てます。 yoiuをY
Dim y As New Button()
あるいは
「と呼ばれる」使用可能なボタンを与えるこれは、xと同じであるが、あれば、Jacob.Perkins.Buttonからそれを区別するために、例えば、完全修飾名を使用しあなたは自分自身を発明した。
Dim z As New System.Windows.Forms.Button()
はい、問題ありません。
新しいものを使用する場合、作成する(インスタンス化する)必要があります。 .NET
DIMがボタンとしてのXDim x as Button
// followed by
x = new Button()
// is the same as
Dim x as new Button()
で
「は点」ボタンのインスタンスが期待される変数と呼ばれるXを宣言する。
x = 36と言うと、36はボタンではないので、コンパイラエラーが発生します。数字です。 x = Button1とButton1があなたのフォームに存在していると言ったら、それは大丈夫でしょう、もちろんボタンでもありました。
これを理解するための唯一の本当の方法は、試してみることです。恐ろしいことは何も起こりません。単純にしておけば、エラーメッセージを読むときに間違いが明白になります。
を作成するための基本的な導入のためにこれらのチュートリアルを見てください。いつあなたは "新しい"と "()"を使用し、いつ使用したくないですか? – 12japerk
括弧を除いてすべてを得ました。 "それはそのクラスの未定義のサイズの配列を作成する"とはどういう意味ですか?それはかなりかわいいですか? :P – 12japerk
クラス名の後ろにある括弧は配列を作成していません。 Newキーワードを使用すると、そのコントロールの新しいインスタンスが初期化されます。これは、Public Sub New()として定義されているコントロールの既定のコンストラクターを呼び出します。コントロールの名前の後ろにある括弧は、任意のパラメータをコンストラクタに渡すために使用されます。ボタンにはパラメータが渡されていないので、大括弧で囲まれています。 – briddums
ありがとう、あなたの答えは非常に有用だった – 12japerk