[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 03/28 13:59 / Filesize : 282 KB / Number-of Response : 982
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

VB.NET質問スレ (Part12)



1 名前:前スレ972 [2005/07/17(日) 20:33:58 ]
VB.NETの質問全般です

過去スレ
VB.NET質問スレ (Part11)
pc8.2ch.net/test/read.cgi/tech/1114217190/
VB.NET質問スレ (Part10)
pc8.2ch.net/test/read.cgi/tech/1109343613/
VB.NET質問スレ (Part9)
pc5.2ch.net/test/read.cgi/tech/1106577850/
VB.NET質問スレ (Part8)
pc5.2ch.net/test/read.cgi/tech/1102512868/
VB.NET質問スレ (Part7)
pc5.2ch.net/test/read.cgi/tech/1096683017/
VB.NET質問スレ (Part6)
pc5.2ch.net/test/read.cgi/tech/1088812165/
VB.NET質問スレ (Part5)
pc5.2ch.net/test/read.cgi/tech/1078134703/
VB.NET質問スレ (Part4)
pc2.2ch.net/test/read.cgi/tech/1065269043/
【老若】VB.net質問スレ【男女】 (Part3)
pc5.2ch.net/tech/kako/1056/10562/1056281084.html
【老若】VB.net質問スレ【男女】 (Part2)
pc2.2ch.net/tech/kako/1043/10436/1043629429.html
【老若】VB.net質問スレ【男女】
pc2.2ch.net/tech/kako/1025/10258/1025848458.html

641 名前:デフォルトの名無しさん [2005/10/12(水) 16:56:38 ]
>>640
どんなコントロールですか?
コントロール名とか分かりますか?

642 名前:デフォルトの名無しさん mailto:sage [2005/10/12(水) 17:04:58 ]
>>620ですが、
fixでOS(XP)を再起動したら回復しました。
よく見たら、他のソフトも表示されておらず、
どうやらポップアップがウィンドウの背後に出ているようでした。
(些細な事で、数時間無駄にしてしまいました)

3週間位連続して使っていたのですが、まれにこんなことがあるんでしょうかね。

643 名前:デフォルトの名無しさん mailto:sage [2005/10/12(水) 17:57:30 ]
>>636
それはODBC ドライバ マネージャが表示するもので、
RDOでOpenConnectionするとき、DSNが無かったり接続情報が不完全な場合に出てた。
もっぱら開発時やデバッグ用の機能で、通常のアプリケーションではDNS情報が不完全な場合は
rdDriverNoPromptを指定してプロンプトを出さずにエラーにしてプログラムで処理する。
ADO.NETはもちろんADO以降そんな機能はない。
第一バックグランドで動くかもしれないプログラムが勝手に妙なプロンプトを出したらユーザーが困る。
System.Data.OdbcはOLEDBや専用の.NET Driver(SQLServerやOracle)が無い場合にやむなく使う機能。
もしプロンプトを出したいだけの理由でODBCを使いたいといってるなら却下だな。

644 名前:デフォルトの名無しさん mailto:sage [2005/10/12(水) 19:17:05 ]
sub とか function の内部でローカル宣言した const に2040バイトほどの
文字列を入れるとコンパイル時にVisualStudioごと落ちるんですが、これは
仕様なんでしょうか?

645 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 00:02:03 ]
TcpClientについて質問です。

現在、DataAvailableのプロパティで、読み取りデータがあるかないかを調べ、
データがある場合はデータを読み込み、無い場合はスルー
という感じで、受信待ちの形(Do Loop)にしているのですが、

WinsockのDataArrivalイベントのように、データを受信した場合にイベントなどで知リたいと思うのですが、何か良い手立ては無いでしょうか?




646 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 01:06:22 ]
BeginRead使うとか?
なぜそうしたいのか分かれば代替案も出せるかも知れないけど

647 名前:デフォルトの名無しさん [2005/10/13(木) 02:04:29 ]
基本的なことで恐縮です。
タイマーについての質問です。

Form上にTimer1とTimer2の2つを実装したとします。
仮に
Timer1 Interval 500ms Tickイベント時の処理時間100ms
Timer2 Interval 150ms Tickイベント時の処理時間10ms
とし、正確な処理時間はさほど必要ないとします。

このとき、Timer1のTickイベント処理中にTimer2の処理のタイミングが重なった場合の
動作は、処理を割り込んでくるのでしょうか?それともTimer2は待機しているのでしょうか?
要は、割り込んでほしくないときは、Timer2を止めるなどの処理が必要なのかどうかです。
逆に、Timer2の処理を優先したいときなどはどのようにすればいいのでしょうか?


648 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 02:16:26 ]
>>647
System.Windows.Forms.Timer なら割り込んでこない。

649 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 02:34:16 ]
>>648
レスサンクス。
ということは、System.Windows.Forms.Timer を使用していると
割り込んでくるな処理は不要ということですね。
逆に割り込ませたいときは、System.Timers.Timerとかかな?
もう少し調べてみます。ありがとうございました。




650 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 05:48:27 ]
>>644
VisualStudioのバージョンと言語、落ちるソースを出さないと誰も相手にしないよ。

651 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 08:19:07 ]
>>649
「割り込む」とかいう言葉遣いの人が
安易にSystem.Timers.Timerとか使うと危険。
危険ってのは別に煽って言ってるわけじゃなく、本当に危険だよ。

652 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 09:22:52 ]
WindowsでのTimerって、メッセージキューにTimerイベントが置かれるだけですよ。
それを理解すれば答えは出ると思うんだが。
まあ、メッセージループを知らずに、メッセージも知らずにプログラム書けるのも一長一短だな。

653 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 09:31:08 ]
>>650
ここはVB.NETスレでしょ?
なんで言語を書く必要が?

654 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 10:30:46 ]
>>653 揚げ足取っておもしろいか?

655 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 10:38:09 ]
>>652
System.Windows.Forms.Timerはその通りだが、全てのタイマがそうというわけではないぞ。

656 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 10:43:41 ]
>>655
その程度のこと元質問を読めば自明。

657 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 10:59:50 ]
System.Timers.TimerとSystem.Windows.Forms.Timerは何が違うんディスカ?

658 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 11:40:20 ]
>>654
じゃあちゃんと書くから追試よろしく。

Visual Studio .NET 2003でVB.NETを使用し、以下のコードをコンパイル。

Public Class Test

Privete Sub TestMethod()
  '↓改行記号で連結した2040バイトの文字列定数(長くなるので省略)
  Const TestConst As String = _
   "abcdef ..... xyz" & _
   ....
End Sub

End Class

これだけでコンパイル完了前にVisual Studioが突然死する。

659 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 12:15:03 ]
>>658
2036バイトまでなら通った。
2037バイトの文字列にすると落ちた。




660 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 12:42:19 ]
しかし.NETってバグフィックスがちっとも出ないのはなんでかね?
これ以外にも小さな(?)バグって山ほどあるよな
発売以来二年以上経過してるのにフレームワークのSP1がでてそれきり。


661 名前:デフォルトの名無しさん mailto:age [2005/10/13(木) 14:39:12 ]
DataGridに列を追加し、さらに列名(列見出し)を表示させるには
どうしたらよいのでしょうか?
画面の何かのプロパティで追加できるのでしょうか?
手順を教えてください、よろしくお願いします。


662 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 15:39:02 ]
>>661
入門書を買うか、入門HPを嫁。

663 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 17:30:34 ]
>>660
バグではありません,それは仕様です,,なのでは?


664 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 17:31:29 ]
>>661

'Test Data 作成
ds = New DataSet("testDs")
Dim dt As DataTable = ds.Tables.Add("testTable1")
dt.Columns.Add("id", Type.GetType("System.Int32"))
dt.Columns.Add("value", Type.GetType("System.String"))
dt.Columns.Add("date", Type.GetType("System.DateTime"))
Dim row As DataRow
For i As Integer = 1 To 100
row = dt.NewRow()
row.Item("id") = i
row.Item("value") = "Test" & i.ToString
row.Item("date") = Now
dt.Rows.Add(row)
Next

'DataGrid.DataSourceにDataTableを設定
Me.DataGrid1.DataSource = dt

'Columnを1つ追加(この時点でDataGridにはColumnが追加されている)
dt.Columns.Add("addCol", Type.GetType("System.Int32"))
'Columnのキャプション設定(この時点で追加されたColumnのキャプションが変わる)
dt.Columns("addCol").ColumnName = "Add Column"


665 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 19:07:06 ]
新しいフォームを作ってそれを呼び出し元のフォームより後ろに表示したい
んですが、何とか実現する方法ってないですか?

666 名前:デフォルトの名無しさん mailto:sage [2005/10/13(木) 20:02:40 ]
>>665
アブフレックス

667 名前:デフォルトの名無しさん mailto:age [2005/10/14(金) 18:28:18 ]
>>664 さん
661です、サンプル例ありがとうございました。
おかげでできました、助かりました。どもです。

668 名前:647 mailto:sage [2005/10/15(土) 12:44:49 ]
レスサンクスです。
最近プログラミングの基本を勉強する必要を痛感していただけに・・

System.Timers.Timer・・・いまんとこはやめときます orz


669 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 15:49:25 ]
クラス内変数なのですが、

private SqlConnection sqlConnection = null ;

と C# で書かれていたものをVB.NETで書く場合はどう書けばよろしいのでしょうか?





670 名前:デフォルトの名無しさん [2005/10/15(土) 16:05:55 ]
番号 データ
1   10
2   12
3   10

のようなテーブルを作ってDataGridに表示していて、
ボタンを押すと、
4   13
などとデータが追加されていきます。

どんどん追加していくと、追加した行が見えなくなってしまいますが、
追加した行にフォーカスを移して、その行が見えるようにする方法を教えてください。

DataGrid1.Select(dataTable1.Rows.Count - 1)
だと選択されるだけで、見えるようにはなりませんでした。



671 名前:670 mailto:sage [2005/10/15(土) 16:16:23 ]
DataGrid1.CurrentCell = New DataGridCell(dataTable1.Rows.Count - 1, 1)
でした。

672 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 16:18:15 ]
>>669
君はどの部分が変換できないの?
あと「クラス内変数」って表現は「フィールド」と言った方が良いよ。

673 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 16:33:27 ]
>>672
レスありがとうございます。

private SqlConnection sqlConnection = null ;
と、C#で書かれているものを

VBNETで書くとこんな感じかなと思ったのですが、これだとエラーになってしまいます。
Private sqlConnection As SqlConnection = New SqlConnection
sqlConnection = null

よろしくお願い致します。


674 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 16:42:28 ]
>>673
Private sqlConnection As SqlConnection = Nothing
または
Private sqlConnection As SqlConnection

参照無しの状態になるのを明示して欲しいから、上の書き方が良いかな?
意図的にインスタンス生成してませんよって。

675 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 17:23:56 ]
自分もC#のソースVBで書き換えたいのですが、

If color = Color.Empty Then

と書きたい時に、
Color.Empty が color.Empty に(大文字が小文字に)
強制的に代えられてしまうのは何故でしょうか?

知ってる方お願いします。

676 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 17:28:44 ]
すみません、color は
Dim color As Colorです。

677 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 18:16:28 ]
VBは大文字小文字が区別されないから。
C#なら大小の区別で別物になるがVB.NETではそうもいかないので、できれば別のネーミングにすることを薦める。

678 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 20:49:19 ]
>>677
大文字と小文字の区別が無い事は全然知りませんでした。
どうもありがとうございます。

679 名前:673 mailto:sage [2005/10/15(土) 21:37:36 ]
>>674
大変参考になりました。。
ありがとうございます。



680 名前:デフォルトの名無しさん mailto:sage [2005/10/15(土) 23:27:36 ]
でも Dim color As Color ってつい書いちゃうんだよな。
大文字小文字の区別はないけど、
クラス名とインスタンス名はいちおうちゃんと別物として扱われるんで。

681 名前:デフォルトの名無しさん mailto:sage [2005/10/16(日) 03:15:24 ]
int, str, bol, tbx, lbx, objとか出来るだけ接頭子付けているが
color は col だとフィールド関係と間違えそうだし、clr かな?

682 名前:デフォルトの名無しさん mailto:sage [2005/10/16(日) 07:55:17 ]
ハンガリアンは捨てたのさ。

683 名前:デフォルトの名無しさん mailto:sage [2005/10/16(日) 13:58:11 ]
webbrowserコントロールでエクセルファイル表示するとおもむろにエクセル立ち上がるのって
どうにか出来ないでしょうか?(せめて最小化とか)
そして閉じてもエクセルやワードのプロセスが残ってるのも何とかしたいんです

684 名前:デフォルトの名無しさん mailto:sage [2005/10/16(日) 15:53:06 ]
Webブラウザコントロールを使って表示しなければいいんじゃないか?
これってたぶんだけどIEで表示してるのと同じだよね。
関連付けで開いた相手のプロセスはIEの監視下?

レガシーなOLE連携でCreateObjectでやった場合でもプロセスは起動するのはやむなしだな。
でもプロセスは残らない。

単純にファイルの関連付けで開いた場合、プロセスの終了は使用者任せだね。

そうじゃなければ、市販コントロールであると思うよ。

685 名前:デフォルトの名無しさん mailto:sage [2005/10/16(日) 18:02:04 ]
>>684
それ言っちゃうと身も蓋も無いんだけどねw
フリーソフト作るのに市販コントロール買ってまでするってのも…
ヘルプ見ようとしても出てこんし
諦めた方がいいかな

686 名前:デフォルトの名無しさん mailto:sage [2005/10/16(日) 20:29:09 ]
>>681
その調子で一度すべてのクラスに識別可能なプレフィックスを付けながら
コーディングしてみ?プレフィックスが変数名より長くなるか、
プレフィックスを覚えきれなくなるのが落ち。まともなOOの環境で
コーディングしたことあるやつなら、プレフィックスを付けることの
無理にとっくに気がついている。だから最近はプレフィックスを付けないのが主流。


687 名前:デフォルトの名無しさん mailto:sage [2005/10/16(日) 22:59:06 ]
>>685
それを言うならば、フリーソフトでEXCELマクロでもないアプリなのに、要EXCELってのも・・・。
企画原案を変えるべきでは?

688 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 00:57:28 ]
>>660
Javaやってりゃ分かるが細かいバグもチョコチョコ直されると激しく迷惑

689 名前:デフォルトの名無しさん [2005/10/17(月) 13:31:05 ]
IPメッセンジャーのようなメッセージ配信機能を電話オペレータの操作画面の一部にテロップのような形式で配信したいと考えています。
また、配信する人は一部の管理者を想定しているのですが、この管理者の権限でメッセージ表示を削除する機能も付加したいと考えています。

VB.NETのWindowsアプリケーション開発で技術的に可能でしょうか?教えてください。お願いします。



690 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 13:46:13 ]
可能です

691 名前:デフォルトの名無しさん [2005/10/17(月) 13:50:39 ]
すいません、具体的なヒントとか頂けたら嬉しいです。。

692 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 15:20:36 ]
690じゃないが、具体的じゃない質問に対して具体的なヒントって?
まず、何が疑問なのか。

693 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 16:18:35 ]
特定のURLから内容を表示するプログラムを造ってますが、ウェブページ上の表形式のデータを取得する場合、
便利な方法は何かないでしょうか。Ezcelのウェブクエリを高速化したかったのですがwebtableのような概念が
見つけられないもので。VB.NETは質問からも分かるように初心者です。本2冊買ってHELPもあたったのですが・・

Imports System.Net
Imports System.Text
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.Text = ""’URLを入力
TextBox2.Text = ""
End Sub



694 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 16:19:08 ]
693の続き

Private Sub Button1_Click( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click

Dim wreq As HttpWebRequest
Dim wres As HttpWebResponse
'ウェブリクエストでテキスト1の内容表示、エンコード
wreq = HttpWebRequest.Create(TextBox1.Text)
wres = wreq.GetResponse()
Dim enc As System.Text.Encoding = _
System.Text.Encoding.GetEncoding("euc-jp")
Dim s As IO.Stream = wres.GetResponseStream()
Dim sr As New IO.StreamReader(s, enc)

'コンテンツ内容をテキスト2に表示
Dim Textline As String = sr.ReadToEnd()
TextBox2.AppendText(Textline)

sr.Close()
s.Close()

End Sub
End Class

695 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 21:24:43 ]
>>689
まずはTCP/IPの勉強をして来なさい

696 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 21:38:51 ]
>>693
整形式XML(のフラグメント)になりうるんであればXmlReaderとかが使えるけど、HTMLだと難しい場合も多いだろうね。
素直なのは、正規表現(System.Text.RegularExpressions名前空間のRegexを中心とする各クラス)を使って整形するとか。
mshtmlを使って解析させるって手もあるけど……。

697 名前:デフォルトの名無しさん [2005/10/17(月) 23:41:11 ]
タスクバーを扱うには、どのあたりのクラスを使えばいいんでしょうか。
シンプルにクイックラウンチをON/OFFしたいだけなんですが。

698 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 23:51:21 ]
他のプロセスのコントロールをいじるってのは.NETのクラスライブラリでは無理。
Win32APIを駆使することになる。
Shell_TrayWnd の ReBarWindow32 に
RB_GETBANDINFO で ToolbarWindow32 のハンドルと一致するの探して
RB_SHOWBAND で操作、かねぇ。
構造体ポインタのやりとりとなるとVirtualAllocExとかCreateFileMappingとか使う必要もあるね。

699 名前:デフォルトの名無しさん mailto:sage [2005/10/17(月) 23:54:41 ]
トレイアイコンのこと?
notifyiconをフォームにドロップするだけ
でフォームのresizeとnotifyiconのmousedownあたりにゴニョゴニョ書けばok



700 名前:デフォルトの名無しさん mailto:sage [2005/10/18(火) 00:13:55 ]
>>698
あ、サンキューです。
そのあたりの情報までは見つけていたけど、「.NETならもっと簡単なんじゃねぇの?」と
思ったんですが、できないというのがわかればがんばってAPI叩きます。助かりました。

>>699
いえ、>>698に書いてあるあたりです。

701 名前:デフォルトの名無しさん mailto:sage [2005/10/18(火) 00:59:19 ]
>>696
調べを進めていく上でのキーワードがいただけました。ありがとうございます。
(実は何を書いてあるのか殆ど分かりませんがw XMLは聞いたことがあるので、ググリまくります。)

702 名前:デフォルトの名無しさん [2005/10/18(火) 02:38:28 ]
>>698

あくまで他スレッドがコントロールを直接操作できないだけ

他スレッドがよんだ自スレッドのメソッドがコントロールをそうさするのはok

703 名前:デフォルトの名無しさん mailto:sage [2005/10/18(火) 02:42:19 ]
>>702

いつスレッドの話になった?

704 名前:デフォルトの名無しさん mailto:sage [2005/10/18(火) 03:46:05 ]
XMLをQueueメモリに保存し、適時取り出して再度Xmlとし、処理していきたい
と考えています。

次のようなコードでQueueに書き込む分にははエラーは出ませんが、

 Dim WriteQueue As Queue = New Queue
 Dim xmlDoc As New System.Xml.XmlDocument
 (ここにXMLを構築するコードを書き込んでいます)
 WriteQueue.Enqueue(xmlDoc)

DequeueメソッドでXMLに書き戻すのがうまくいきません。Queueに書き込んだ
ものとソックリ同じ物を、新しく作成したXmlDocumentとしたい(つまり、コピー
を作る)んですが・・・・・



705 名前:デフォルトの名無しさん mailto:sage [2005/10/18(火) 05:52:26 ]
>>702
話がずれてる上に間違ってる。

>他スレッドがよんだ自スレッドのメソッドがコントロールをそうさするのはok
okじゃないから Control.Invoke / BeginInvoke を使おうな。

706 名前:デフォルトの名無しさん mailto:sage [2005/10/18(火) 06:31:27 ]
>>704
インスタンスとか参照とか理解してなさそうだが……。
取りあえずClonseメソッド。

707 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 07:09:58 ]
.netではDDE通信が推奨されていないらしいですが
代わりにどのような方法が推奨されているでしょうか?

708 名前:最凶VB厨房 mailto:sage [2005/10/20(木) 07:12:12 ]
リモチン?

709 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 09:34:36 ]
>>707
.net Remoting
情報少ないけど、ほぼ唯一でてるオレンジの本見れば、DDE程度はOK。
ただ、自アプリ同士の連携の場合だからね。

昔のOfficeとかがDDEを提供していた(?)のと同じように、OfficeとかがRemoteオブジェクトを提供してるわけじゃないので。
(.netの弱点ってネイティブでOffice連携が無いことなように思える)



710 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 10:11:43 ]
>>708, 709
thx.調べてみます。
代わりにソケット通信っていうのはありでしょうか?

711 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 12:13:24 ]
>>710
.NET RemotingはTCP/HTTPをベースにしてる(内部で利用している)。

712 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 12:46:14 ]
>>711
さんくす。じゃ、簡単にソケット通信でやっちゃおうかな

713 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 13:01:00 ]
ソケットは単なる文字列の送受信。
リモーティングはシリアル化されたオブジェクトのやり取り。

目的が全く違います。

714 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 13:27:10 ]
質問です。
スタートアップに指定したフォームを判断することはできますか?

 if Form1 = Application.StartupForm then

みたいなことをしたいんですがー。。

715 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 14:00:22 ]
画面から『閉じる(×)』ボタンを非表示にしたいです。
最大化・最小化は残したいので、ControlBoxでは実現できませんでした。
何かいい方法はないでしょうか

716 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 14:54:17 ]
Visual Studio の操作?に関してになるのですが、

C# の場合 メソッドのオーバーライドを行なう際は

Protected Override とタイプすると、インテリセンスが開き、
その中からオーバーライド可能なメソッドを選択すると自動的に
シグネチャ含めてコードが追加されるのですが、VB.NET の場合は

Protected Overrides とタイプしてもインテリセンスが開きません。
VB.NET の場合は、エディタの左上から (overrides) を選択し、
その右からオーバーライドしたいメソッドを選択する、といったように
マウスでカチカチやるのが一般的なのでしょうか?


717 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 18:28:22 ]
>>715
無効化なら
ttp://www.atmarkit.co.jp/fdotnet/dotnettips/142closebtn/closebtn.html
だが、さて非表示にはできたかねぇ……。

718 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 19:06:49 ]
>>714
プログラマがどれで起動したか把握できないってのはどうよ?

719 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 19:44:58 ]
ASP.NET、VB.NETで開発しております。
ログをテキストファイルに出力するような共通関数を作成したいのですが
どうにも行き詰って困っております。

wwwroot下にフォルダを作成し、その下に動的にログファイルを作成したいのですが
何かいい方法ありますでしょうか?
よろしくお願いします。



720 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 19:46:50 ]
どこで行き詰まったの?

721 名前:デフォルトの名無しさん mailto:sage [2005/10/20(木) 23:03:31 ]
>ソケットは単なる文字列の送受信。
やはりそういうことか!

722 名前:デフォルトの名無しさん mailto:sage [2005/10/21(金) 09:28:57 ]
でも簡単なやり取りだけならソケット通信でもいいよね?

723 名前:デフォルトの名無しさん mailto:sage [2005/10/21(金) 09:51:56 ]
>>722
だから自分で目的を考えてでしょ。
単なる非同期・同期での通信ならばソケットでコマンドで十分。
イベント+情報の送受信ならばリモーティング。

724 名前:デフォルトの名無しさん mailto:sage [2005/10/21(金) 13:32:37 ]
VB.NETの勉強としてTextBoxクラスを継承して
書式チェック機能を持ったTextBoxを作成しようとしています。

Validatingイベント内で、書式チェックエラーとなった場合に
フォーカスの移動をさせないようにしたのですが
Formの閉じるボタンを押しても同イベントが発生して
閉じるボタンが無効になってしまいます。

イベント内でイベントをキャンセルしているので当然なのですが
チェックを行ってエラー時はフォーカスを移動させないが
特定の処理(画面を閉じるなど)の場合はチェックしない
という機能を作ろうとした場合、どのようにすればいいでしょうか?
先人達の知恵を貸してください。


725 名前:デフォルトの名無しさん mailto:sage [2005/10/21(金) 20:28:20 ]
>>724
>閉じるボタンが無効になってしまいます。
普通そんな事にはならないと思うけど。
閉じるボタンってウィンドウの右上のXのことだよねえ?

フォーム上にフォームを閉じるためのコマンドボタンが用意してあって、
それをクリックしようとしてもクリックできない、なんてオチだったりして。

726 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 08:06:42 ]
>何かいい方法ありますでしょうか?

log4net
EntLib/LoggingAB

727 名前:デフォルトの名無しさん [2005/10/22(土) 16:45:43 ]
TextBox1 - TextBox10 の .Text にすべて"*"を表示させたいのですが、

それぞれに
TextBox1.Text = "*"
TextBox2.Text = "*"



TextBox10.Text = "*"

より頭のいい方法を教えていただきたいのですが、

728 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 17:03:24 ]
>>727
TextBox配列にいったん格納してからループで値セット、ってあまり手間は変わらんか。

729 名前:最凶VB厨房 mailto:sage [2005/10/22(土) 17:14:01 ]
TextBox型のものに"*"をFor Eachでセットしていくとか。



730 名前:デフォルトの名無しさん [2005/10/22(土) 18:00:23 ]
>>728, >>729

727ですが、私は初心者ですので、
具体的にお願いできますでしょうか?

教えていただいてるのにすみません。。。

731 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 18:09:10 ]
初心者ならまずは地道にやっとけってこった

732 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 18:54:52 ]
>>727
dobon.net/vb/dotnet/control/tbpasswordchar.html
↑のようなことをやりたいってわけじゃないってこと?

733 名前:最凶VB厨房 mailto:sage [2005/10/22(土) 20:51:25 ]
  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Const kome As String = "*"
    Dim c As Control
    For Each c In Me.Controls'フォームのコントロール全部に対して
      If c.GetType() Is GetType(TextBox) Then'テキストボックス型のものなら
        Dim t As TextBox
        t = CType(c, TextBox)'コントロールをテキストボックスとして扱って
        t.Text = kome'テキストプロパティに*をセット
      End If
    Next'していく
  End Sub'とかネ

734 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 21:00:24 ]
>>733
ControlにTextがあるんだからCType(c, TextBox)は必要ないぜ。
それより「結果を表示するTextBox11まで*になってしまいましたどうしたらいいですか」とか返されそうだな。

735 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 21:01:41 ]
あ、それと型判定は
If TypeOf c Is TextBox Then
な。

736 名前:最凶VB厨房 mailto:sage [2005/10/22(土) 21:06:09 ]
具体的な指摘どもども。
  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Const kome As String = "*"
    Dim c As Control
    For Each c In Me.Controls   'フォームのコントロール全部に対して
      If TypeOf c Is TextBox Then       'テキストボックス型のものなら
        c.Text = kome         'テキストプロパティに*をセット
      End If
    Next     'していく
  End Sub 'とか


737 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 21:07:10 ]
>>733
そんな気張って答えるような質問とも思えんが。。

>>734
突っ込む奴が馬鹿だと萎えるなw

738 名前:最凶VB厨房 mailto:sage [2005/10/22(土) 21:09:46 ]
>>737
最近コードを書いてなかったので
ちょっとしたリハビリや。

739 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 21:15:06 ]
第一さ、そういうの「頭のいい方法」って呼んでよいものかどうか。。
サンプルコードとしてもあまり良質と思えないし。
俺がサンプルかくならせめて、

(1) Nameが"TextBox*"に一致するTextBoxのコレクションを作る関数を示す

(2) Nameが"TextBox*"に一致するTextBoxのコレクションを内部的に作って、それを
  操作するクラスを示す

このぐらいするよ。



740 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 21:17:31 ]
>>739
先生、VSを使ってないのでNameプロパティは基本的に空です! どうしたらいいですか!

741 名前:先生 mailto:sage [2005/10/22(土) 21:23:20 ]
>>727






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<282KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef