tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルサイズ変更できなくする
記事No3128
投稿日: 2006/02/16(Thu) 10:36
投稿者りるむ
[OSのVer]:Windows XP Pro SP2 [VBのVer]:VB2005 Express Edition 

VB.NETTips一覧のフォームの下記を参考にしました。
「6.フォームのサイズを変更できなくする」
'フォームのサイズを変更できなくする
Me.FormBorderStyle = FormBorderStyle.FixedSingle

上記を記述しましたら、エラーが出て「Windows.Forms.」が付加されました。
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.FixedSingle

何が違うのでしょうか?

[ツリー表示へ]
タイトルRe: サイズ変更できなくする
記事No3132
投稿日: 2006/02/16(Thu) 16:48
投稿者YAS
>Me.FormBorderStyle = FormBorderStyle.FixedSingle

FormBorderStyle.FixedSingleのFormBorderStyleの部分がプロパティそのものと解釈され,
自分の値を設定するのに自分自身の値を使うことになり,「入れ子にされた型」という
エラーになったのでは?

FormBorderStyle.FixedSingle

Windows.Forms.FormBorderStyle.FixedSingle
は同じです。

人名でたとえるなら,同じ部署に名前が同じ人がいるので名字をつけて呼ぶようなものです。

もっと詳しく記述すると
Windows.Forms.FormBorderStyle.FixedSingle

System.Windows.Forms.FormBorderStyle.FixedSingle
となります。

Me.FormBorderStyleの方を詳しく記述すると,
System.Windows.Forms.Form.FromBorderStyle
となります。

つまり,Formsから記述すれば区別できることになります。
しかし,「System」や「System.Windows.Forms」は参照設定されていますが,
「System.Windows」は参照設定されていないので,Windowsから書けと修正が
入るのだと思います。

[ツリー表示へ]
タイトルRe^2: サイズ変更できなくする
記事No3155
投稿日: 2006/02/20(Mon) 00:09
投稿者りるむ
なんとなく解ったような気がするのですが、ここの例に出しているという事は

>Me.FormBorderStyle = FormBorderStyle.FixedSingle

このまま使う事も出来るのですよね?

[ツリー表示へ]
タイトルRe^3: サイズ変更できなくする
記事No3156
投稿日: 2006/02/20(Mon) 02:01
投稿者花ちゃん
System.Windows.Forms が標準で参照されているのだから、本来なら
FormBorderStyle.FixedSingle で問題がないはずですが、DialogResult.OK も同様に
波線が表示されます。
一方 同じ名前空間のMessageBox.Show や OpenFileDialog では、波線が表示されません。
.NET 2003 では、System.Windows.Forms が Imports されていればどちらも警告表示
される事はありませんでした。

ヘルプの使用例も同様の使い方をしていて、波線が表示されますよね。
hhttp://msdn2.microsoft.com/ja-jp/library/system.windows.forms.form.formborderstyle.aspx 

一方こちらでは、省略せずに書けと。
hhttp://msdn2.microsoft.com/ja-jp/library/y6t76186.aspx

結論としては、VB2005 では、定数は省略せずに書いて下さいという事ですかね。

[ツリー表示へ]
タイトルRe^4: サイズ変更できなくする
記事No3162
投稿日: 2006/02/21(Tue) 09:51
投稿者りるむ
> 結論としては、VB2005 では、定数は省略せずに書いて下さいという事ですかね。

解りました。
そのように記述したいと思います。
ありがとうございました。

[ツリー表示へ]