[表示 : 全て 最新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

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

742 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 23:04:42 ]
10個くらいなら手で書いちゃえよ

743 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 23:27:21 ]
初回しか埋めないってんなら、>>742で。
何度か*でクリアするってんなら、>>728で。

744 名前:デフォルトの名無しさん mailto:sage [2005/10/22(土) 23:29:20 ]
>>743
いや、複数回クリアするならメソッドに切り出せばいいと思うんだな

745 名前:初心者 [2005/10/23(日) 11:48:58 ]
USBドライブを差し込んだことを検知する方法ありますでしょうか?


746 名前:初心者自己レス [2005/10/23(日) 12:11:14 ]
745 自己レス
C#ですけど、www.publicjoe.f9.co.uk/csharp/snip/snippets.htmlにありました。
お騒がせ

747 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 12:54:15 ]
Range("D2:D6").Value = Array("国", "数", "理", "社", "英")

エクセルのマクロでこうやって入力すると全部国ってなってしまいます
D2が国D3が数D4が理って具合になればいいんですが
どうすればいいんですか?



748 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 13:04:09 ]
>>747
ttp://oshiete1.goo.ne.jp/kotaeru.php3?q=1693364

749 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 13:13:32 ]
>>748
マルチだっていいたいのかな?
嫌味な奴w
マルチの何が悪いのかサッパリわからんが、マルチが気に入らないなら放っときゃいいのに。

>>747
自分で答え見つけた方が楽しいだろうからヒントだけ。
ヒント:直線は平面の特殊ケースだと考えよう。

750 名前:デフォルトの名無しさん [2005/10/23(日) 14:02:28 ]
VBでスロットのプログラム作ってるのですが、「スタート」ボタンを押したら
0.1秒単位でラベルの数字が回転しているように見せるにはどうしたらいいのでしょうか。
お願いします。

751 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 14:04:46 ]
>>749
お前馬鹿ですね。

「 V B . N E T 質 問 ス レ 」

752 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 14:06:22 ]
>0.1秒単位でラベルの数字が回転しているように見せる
まず日本語の勉強をした方がいいね。意味不明。

753 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 14:36:06 ]
>>750
数字をパラパラ切り替えるんじゃなくて、リアルに上下スクロール
しているように見せたいってこと? けっこう面倒だと思うよ。

すべての数字や絵柄をピクチャ扱いで配列に入れて、乱数を元にス
タックしたシリンダ用の配列を使って、Y軸方向に詰めながらスラ
イド表示させるくらいかな?

0.1秒を刻むならEnvironment.TickCountプロパティでどうにかな
るかと。数字の全体が表示されるまでに0.1秒かかるようにしたい
ってのは、自分で管理する必要あり。

754 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 14:40:56 ]
>>753
おいおい750も750だが、あんたもあんただなあ。。
いったい750のどこをどう読めばそういう解釈がw

755 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 17:56:30 ]
>>719
そういや俺もできなかったわ
結局トレースログのテキストをそのまま使った記憶あるな
そもそもファイル自体が作れなくない?
ファイル作れない、既存ファイルへの書き込みができないみたいな状態になって
すげぇ困ってトレースログをそのまま使ったな。できるのかな、これ

756 名前:デフォルトの名無しさん [2005/10/23(日) 20:10:17 ]
IISのセキュリティー設定とかきちんとやった?
プロセスの所有者が書き込み権限あるかとか。


757 名前:デフォルトの名無しさん [2005/10/23(日) 21:00:45 ]
VB.NETを使用して、Winアプリを開発しています。
アプリは、画像アップローダなんですが、VB.NETでサーバにファイルを
アップロードする方法がわかりません。
どなたかわかる方がいたらお教えください。



758 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 21:06:36 ]
サーバによる。

759 名前:757 [2005/10/23(日) 21:09:24 ]
言葉が足らず申し訳ございません。
サーバは、webサーバです。

760 名前:757 [2005/10/23(日) 21:14:06 ]
まだ足りませんでした、IISではないです。
よろしくお願いします。

761 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 21:35:34 ]
>757
相手がWebサーバーなら受け取る側もアプリが必要だが・・・

アプリが必要かどうかはアップする方法やサーバーの設定による。

762 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 21:38:16 ]
>>757
ヒント:<input type="file">
    HttpWebRequest

763 名前:757 [2005/10/23(日) 21:55:18 ]
ヒントありがとうございます。現在はこのように処理をしてるんですが
req = CType(System.Net.WebRequest.Create(url), System.Net.HttpWebRequest)
req.Method = "POST"
req.ContentType = "multipart/form-data"
reqStream = req.GetRequestStream()
reqStream.Write(data, 0, data.Length)

さて?こっからファイルのアップロードは
どうやるんだろうとなってしまっています。

もう少しヒントを頂けたら幸いです。


764 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 22:06:37 ]
つうかね、入門書かってこいよ。
ファイルのアップロードなんて入門書に載ってる。

765 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 23:32:18 ]
winXP、vb.net2003、office2003使用です。


vb.net側で、「Imports Microsoft.Office.Interop」と「Dim ThisApplication As New Excel.Application」を利用してエクセルを起動した後、エクセル側で「ファイル」→「終了」の操作をしてエクセルを終わらせた場合に、
「エクセルが終了した」ことをvb.net側で情報として捉えることができるコマンドはありませんか?

766 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 23:39:36 ]
>>765
それってVB4+Office95時代からある問題だけど今でも出来ないんじゃない?


767 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 23:55:41 ]
どうしても必要ならタイマ使ってポーリングすればいいじゃん。
エクセルが生きているかどうかの確認は工夫すれば出来たはずだよやった記憶があるから。



768 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 23:56:15 ]
MSDN2のVSTOのリファレンスにWorkbook.Shutdownイベントなんてのがあったけどこの辺?
解説読むと違う気もするけど。

769 名前:765 mailto:sage [2005/10/23(日) 23:57:16 ]
>>766
ホエ!やっぱムリなのか〜?
ネットで調べても、VB側ですべて処理させたら、プロセスの終了まで出来ることはわかってんだけどね。。
やってることは、VB側でマクロを含んだエクセルを起動させて、あとの処理はエクセルのマクロまかせでエクセル側で終了まで処理させるのよ。。
マクロでやらせてるのは、定型の様式への入力支援で、文字の入力まですれば、罫線や結合や印刷範囲の指定までマクロで一気にやらせてます。ただ、そのほかの処理もあるんでエクセル側での終了は必須なんだよな〜
で、エクセル側で終了しても、VB側のフォームが終了するまで起動したエクセルのプロセスが残るもので、それを何とか終了できないかと。。

>>766
回答サンクスです。も少し研究してみます。

770 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 00:05:07 ]
ポーリングしてたら、もしExcelファイル開いていたら保存ダイアログ出る場合に固まっちゃうぞ

771 名前:765 mailto:sage [2005/10/24(月) 00:18:17 ]
ThisApplication.ActiveWorkbook.Nameで既存ファイルを呼び出した場合でも、起動したworkbookの名前は取得できるんで、それから何とかできないかと考えてるんですが。。
「ポーリング」はよくわからないですが、一定時間ごとに監視するというやり方ですかね?だとしたらなるべくパソコンには余計な負担はかけたくないですが。。
できれば、「エクセルが終了した時点で」その情報を取得する方法がないかと。。

明日もあるんで今日は寝ます。レスくれた皆さんありがとうございました。。

772 名前:765 mailto:sage [2005/10/24(月) 00:26:32 ]
>>768
Visual Studio Tools for Office..
たかがこんなプログラムにこんな高い製品は買えない。。
今の.netも個人持ちなのよ。。

773 名前:デフォルトの名無しさん [2005/10/24(月) 09:27:56 ]
お世話になります。
データセットのDataRowの値が「H」だった場合には、データグリッドに、「ハードディスク」と表示するというような処理をしたいのですが、MSDNで調べても方法が分かりません。
できれば、データグリッドの値だけを変えるようにしたいのですが、どなたか方法をご存じないでしょうか?
よろしくお願いします。

774 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 09:33:39 ]
WinFormかASP.NETかどっちだ?

775 名前:デフォルトの名無しさん [2005/10/24(月) 09:51:01 ]
すいません。WINDOWSのFORMです。

776 名前:デフォルトの名無しさん [2005/10/24(月) 09:57:59 ]
あげ

777 名前:724 mailto:sage [2005/10/24(月) 14:16:12 ]
返事が遅れてすみません

>>725
×ボタンの事であってます
Validatingイベント内で

If IsNumeric(CType(sender, TextBox).Text) = False Then
e.Cancel = True
Exit Sub
End If

のようにしているだけです
Validatingイベント内でキャンセルしているので
フォーカスは移動できないのですが(これが当然の動作という事は判ってます)
Formの×ボタンを押そうとした時はValidatingを発生させないような事はできますでしょうか?




778 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 15:30:11 ]
>>777
.NETフレームワークのアップデート汁

779 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 15:39:26 ]
>718
そのレスはもしかしてVB.NETで派生フォームとか使ってないの?

フォームAからフォームB、フォームC、フォームDを派生させたとして、
B〜Dのいずれかがスタートフォーム。
それをフォームAの中で判断したい。

フォームAの記述

 If ( me = StartupForm) Then
  ・・・
End If



780 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 19:40:10 ]
ユーザーコントロールを派生したくラスの
デフォルトのイベントを OnLoad 以外にすることって可能ですか?


781 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 19:53:11 ]
デフォルトのイベントって何?

782 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 20:43:47 ]
>>777
あ、なるほど確かにそうなるね。
確信はないけどコントロール側で対処するのは正攻法では難しいんじゃないかな。

フォームのClosingイベントハンドラで引数のeの値をヲチすると、
コントロール側でそういうことをしている場合これのCandelメンバが
Trueに設定されるようだから、これをFalseに書き戻してやれば
いいんじゃないかな。

とりあえず俺の環境ではうまくいった。

783 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 22:09:58 ]
先生、0除算をしたら、DivideByZeroExceptionが投げられると思ったら、
なんか無限記号が表示されるんですけど、どういうことなのでしょうか?

784 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 22:39:32 ]
>>783
浮動小数を使った場合のデフォルトの動作。
で、VB.NETは特に指定しなかったら除算は大体Doubleとして計算されるから。
判断はDouble.IsInfinityメソッドとか。

785 名前:最凶VB厨房 mailto:sage [2005/10/24(月) 23:30:36 ]
無限記号だって?
よっこらせーっと

786 名前:最凶VB厨房 mailto:sage [2005/10/24(月) 23:36:36 ]
Dim a As Single = 30
a = a / 0
MessageBox.Show(a)
+∞

ぽっかーん

787 名前:757 [2005/10/25(火) 00:46:32 ]
もう一度質問させてください。
VB.NETを使用して、Windows Applicationを開発しています。
POSTによりWebサーバに画像ファイルをアップロード(PHP使用)する方法がどうしてもわかりません。
どなたか教えていただけませんか?

現在はこのように書いています。
Dim req As System.Net.HttpWebRequest = CType(System.Net.WebRequest.Create(url), System.Net.HttpWebRequest)
req.Method = "POST"
req.ContentType = "multipart/form-data"
Dim reqStream As System.IO.Stream = req.GetRequestStream()
↓ ここにが画像を入れるのかなと思っていますが…
Dim data As Byte() = System.Text.Encoding.ASCII.GetBytes("?key=11&gazou='バイナリ?'")
reqStream.Write(data, 0, data.Length)
Dim res As System.Net.WebResponse = req.GetResponse()
Dim resStream As System.IO.Stream = res.GetResponseStream()
Dim sr As System.IO.StreamReader = New System.IO.StreamReader(resStream, enc)
Dim html As String = sr.ReadToEnd()




788 名前:757 [2005/10/25(火) 00:49:30 ]
追記させてください。
PHP使用とは、受け取り側のWEBサーバーはPHPを使用しています。

789 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 00:49:59 ]
FileStreamで読み出せば

790 名前:757 [2005/10/25(火) 01:02:37 ]
レスありがとうございます。
ほんとに最近こればかりに時間を割かれているので・・・。泣きそうです。
Dim wkStream As New System.IO.FileStream("C:\gazou.jpg", System.IO.FileMode.Open)
のように読み込んで、
dim inData as byte = new byte(4096)
dim bytesRead integer = wkStream.Read(inData, 0, inData.Length);
while (bytesRead > 0)
reqStream.Write(inData, 0, bytesRead);
bytesRead = wkStream.Read(inData, 0, inData.Length);
end while

って感じになるのですか?

791 名前:757 [2005/10/25(火) 01:52:37 ]
やっぱりだめでした。
Dim reqStream As System.IO.Stream = req.GetRequestStream()
reqStream.Write(data, 0, data.Length)
Dim wkStream As New System.IO.FileStream("c:\gazou.jpg", System.IO.FileMode.Open)
Dim inData(wkStream.Length) As Byte
Dim bytesRead As Integer = wkStream.Read(inData, 0, inData.Length)
While (bytesRead > 0)
↓ここでバイト数オーバーとでます、。
reqStream.Write(inData, 0, bytesRead)
bytesRead = wkStream.Read(inData, 0, inData.Length)
End While
reqStream.Close()

すでに画像のアップロードに成功された方、
どうか教えてください。

792 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 08:31:58 ]
普通にHTMLページでそのファイルアップロード画面へアップした場合と、
なにか悩んでるプログラムでの、
HTTP通信の差を見た?
ログとるなり、他のツール使うなりすれば見れるでしょ。

つうか、サーバもいじれるならFTP立ち上げたほうが早いし問題ないし。
HTTPのファイルアップロードは所詮オマケというか無理がある仕様だし。

793 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 08:36:29 ]
ところでGetRequestStreamの解説を読んだことがなさそうだな>質問者

794 名前:デフォルトの名無しさん [2005/10/25(火) 16:07:35 ]
DataColumnCollectionの列順を変えたいのですが、どなたかよい方法をご存じないですか?
MSDNで調べても、方法が載っていません。
よろしくお願いします。

795 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 17:26:38 ]
新しいDataTableを作る

796 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 19:13:31 ]
その並び順を気にする発想が理解できん。


797 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 19:59:06 ]
一度取得したテーブルをどうこうするより、希望する列順で取得できる
クエリを出したほうが楽かと。



798 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 23:39:21 ]
どうもこんばんわ。
VB.NETでクォータービューの、FFTみたいなのを考えているんですが、アルゴリズムに
いまいち自信がもてません。
今は、Form1Paintに2次元配列から取得したマップデータをもとに、DrawImageで
全てのマップチップを描画しています。コントロール配列でピクチャーボックスにしなかったのは
重いかなぁとおもったからです。DrawImageでも普通にちらつきますのでバックバッファいれなきゃなりませんが。

今は、iとjで2重ループで回して左奥から順番に右手前まで描画しています。
マップ回転は描画する順番を変えてやっています。

それでとりあえずはそれっぽいマップが出来上がったのですが、その上にキャラを
置いたり、カーソルを表示したりする時に、その座標をどのように取得するべきなのかが
よくわかりません・・・。

DrawImageだと座標が取れないので、自分でxとyを決めるのでしょうか。
でもそういうのだとなんだか・・・単に座標は合っていて、見た目は正しいけれど、
実際はそこに見えているだけで配列データにリンクしていないので、どうもしっくりこないなぁ。
と感じます。

すみません・・自分で書いてても判りにくいんですが、正しいアルゴリズムの
ヒントでも結構ですので教えていただけないでしょうか。


799 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 00:05:28 ]
>>798
ヒント: 内部的に2次元で処理して、クォータービューはDirect3Dまかせ

800 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 00:14:16 ]
>>798
なんて事は無い質問だな
3次元クリッピングっていう奴だ

801 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 09:59:20 ]
例えば、
On Error Goto ErrHandler
    :
    :
ErrHandler:

で、ErrHandlerに飛んできた時に、呼び出し元の行番号を取得する方法ってあります?
現在の行番号を取得することはできるんだけど・・・

802 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 10:47:43 ]
>>801

そんなんも考えつかない or 調べられないのだったら、
プログラマー辞めたら?


803 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 10:51:59 ]
>>802
うはw
なにコイツw
プログラミング以外人に誇るモノがない人ですか?

804 名前:801 mailto:sage [2005/10/26(水) 11:05:45 ]
New StackFrame(True).GetFileLineNumber
で現在の行番号を取得したり、

Reflection.MethodBase.GetCurrentMethod.Name
で現在実行中のメソッド名を取得はできたんですけどね・・・

これくらいしか調べられなかったオレって・・・

805 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 12:10:12 ]
行番号???
まあ、ログ吐きたい場合などにほしくなるけど、結論的には不可です。
デバックコンパイルすれば例外の中に履歴的に出るから見れるけど、実行時はありません

806 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 12:26:07 ]
>>801
On Errorより、Try〜Catchを使った方がいいのでは?

807 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 12:30:01 ]
そそ
ワシもtry-catchでexception.stacktraceじゃいかんのか?とオモタ



808 名前:駆け出しのPG [2005/10/27(木) 00:41:10 ]
Windowsフォームで作ったアプリに簡単なプロテクトを掛けたいのですが、良い方法はありませんか?

809 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 00:41:56 ]
プロテクトって何をプロテクトするのよ

810 名前:駆け出しのPG [2005/10/27(木) 00:44:12 ]
EXEコピーを防止したいです。
もちろんユーザーが素人に限定されますが。

811 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 00:50:50 ]
それは何故?

812 名前:駆け出しのPG [2005/10/27(木) 00:56:34 ]
依頼されてアプリを作りましたが、依頼者の仕事仲間で需要があるそうです。
依頼者は業務上の使用ですので著作権を完全には放棄したくありません。

813 名前:デフォルトの名無しさん [2005/10/27(木) 00:58:20 ]
>もちろんユーザーが素人に限定されますが。
>それは何故?
という意味でしたか?

814 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 01:57:54 ]
ん、取りあえず思いついたいい加減なやり方。

ライブラリプロジェクトHogeを作って、ライセンスドクラス一つだけ用意。メンバはライセンスキーだけ。取りあえず空。
メインのプロジェクトはそれを参照。
Hoge.dllを除いてユーザに配布。
ユーザのLANアダプタのMACアドレスのMD5を取得。
送信して貰う。
そのMD5をライセンスキーと言うことにして、それをHogeのライセンスドクラスのライセンスキーに設定。
Hogeを再コンパイルして、単独で配布。
あとは起動時にHogeのライセンスキーとユーザのLANアダプタのMACアドレスのMD5が一致するか確認。
毎回ユーザのLANアダプタのMACアドレスのMD5を取得するのは面倒なのでレジストリに取っておくとか。

.NETの知識が多少でもある人ならすぐあれこれできてしまうな。
許可の取消もできないし。

いずれにせよユーザの何らかの情報を元に制限を加える必要がある。
単なるパスワードじゃ教えて終了だし、バイナリごとに異なるキーでも実行ファイルのコピーには無力だし。

815 名前:デフォルトの名無しさん [2005/10/27(木) 06:50:09 ]
>814
ありがとうございます。
試してみてまたここにカキコします。
数日下さい。


816 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 08:42:19 ]
不思議な日本語を見た

817 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 14:59:47 ]
あるファイルが他のプロセスにロックされているかどうかを知る方法はありますでしょうか?



818 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 15:06:09 ]
実際に開いてみる

819 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 15:51:31 ]
2005 Express Edition Beta 2を使ってツールを使ってるんだけど、結構いい感じ。
ヘルプが日本語で無いのは残念だけど。
製品版では日本語ヘルプがちゃんと用意されるだろうから、オレみたいなホビーユーザーなら、Expressで不足は無いと思う。

んで、質問。
Expressで作ったブツは自由に配布できるの?
完全に学習用限定な「Borland C#Builder Personal ダウンロード版 1.0」みたいな例があるから、ちょっと不安になる。

820 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 16:46:51 ]
>>819
Go-Liveの申請をすれば、配布は出来る。
諸注意等は、ググって調べてくれ。

821 名前:デフォルトの名無しさん [2005/10/27(木) 20:24:38 ]
VB.NET のお試し版をダウンロードできるサイト、教えてもらえませんか。


822 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 21:22:41 ]
www.microsoft.com

823 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 21:48:17 ]
NDOCでソリューションファイルの読み込み方教えろや!
ニートども!

824 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 22:21:18 ]
>>820
製品版についての話だと思うんだが>配布

825 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 22:22:54 ]
>>824
??脳が不自由な方?

826 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 22:33:35 ]
>>825
ほへ?
>819「Expressで作ったブツ」の"Express"はベータでない製品版で、
それで作ったものを配布可能かどうかを聞いてる、と読んだんだが。
そうなるとGo-Liveとは関係ない。

827 名前:819 mailto:sage [2005/10/27(木) 23:43:31 ]
どちらとも解釈できる書き方して申し訳ない m(_ _)m
実は、オレ自身、同じエディションでもベータ版と製品版でライセンスが違うとは知らなかったよ。

製品版Expressなら、ブツは配布できるって事でOK?

>821
ttp://www.microsoft.com/japan/msdn/vstudio/2005/express/vbasic/default.aspx
一応、復元ポイントを作成してからインストールする方がいいかも。



828 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 23:51:31 ]
>>826
「ほへ?」はねぇべ?
わやきもいじゃ。

829 名前:デフォルトの名無しさん [2005/10/28(金) 01:17:27 ]
>>828
824と823を間違えてるのに気づけよ


830 名前:801 mailto:sage [2005/10/28(金) 10:29:57 ]
>806
>807
exception.stacktraceでこんな情報を取得できるって気づきませんでしたw
Try〜Catchは場合によって使用していたのに・・・。

遅レススマソ。

831 名前:デフォルトの名無しさん [2005/10/29(土) 08:26:33 ]
教えてください。
mbm.livewiredev.com/
[INFORMATION]で[SHARED MEMORY]の項目を選び、[C CODE]の中の
:: VB.NET Code
» VB.NET code can be downloaded here, thanks to Pedro Navarro
を選んでダウンロードし解凍してVB 2005 Express Edition Betaで[ビルド]し、[デバッグ開始]したら、
[sensor 2]のほうの[name]での表示(“CPU”)が“PU”に化けたり、”U”だけになったりする。
また[sensor2]の[Current value]の表示が整数できちんと出ることもあるが、しばらくすると、
Eの型で表示されてしまう。時々(っていうか、なりっぱなしになってしまうこともある)、
まるで表示されなくなってしまうこともある。何故なんだろうか。

VB.netは持ってないんで、ベータ版でしかテストできないので、誰か他のバージョンで
動作確認をして報告してもらえるとありがたいです。
(尚、上記は、”Mother Boardmonitor5が動いている状態でないとテストできません。)


832 名前:デフォルトの名無しさん mailto:sage [2005/10/29(土) 08:35:49 ]
Cでのchar[]を全部Char()で宣言してる……。

833 名前:デフォルトの名無しさん [2005/10/29(土) 10:24:40 ]
>>832
レス、どうも
ちょっと、その意味がわかりません



834 名前:デフォルトの名無しさん mailto:sage [2005/10/29(土) 12:59:16 ]
「bitmapinfo構造体のメモリハンドルとビットマップデータのメモリハンドル」が
与えられて、そのデータをピクチャボックスに表示したいのですが、どうやったら
いいのかさっぱり分かりません
ヒントだけでもお教え頂けませんでしょうか

835 名前:デフォルトの名無しさん mailto:sage [2005/10/29(土) 13:37:14 ]
簡単に言えばー、
Win32APIのCreateDIBitmap関数でHBITMAP作ってー、
Image.FromHbitmapメソッドでBitmapにする。
メモリハンドルというのがHLOCALならアドレス取得にはLocalLock関数。そうでないのならそれに応じた関数。
Win32APIでは使い終わったGDIオブジェクトやメモリ領域の後かたづけに気を付けて。

836 名前:デフォルトの名無しさん mailto:sage [2005/10/29(土) 13:37:57 ]
ヒント

(1) MSDN(ドキュメントビュア)を起動して、"bitmapinfo"を検索する

(2) 検索結果の「場所」のカラムヘッダをクリックしてソートし、
  「場所」が「プラットフォームSDK: GDI」になっている適当な項を表示する。

(3) 表示されたページ、およびその一番下の「参照」にリンクされているページを
  注意深く読む。ドキュメントビュアのツールバーの「同期」ボタン(←→)を押して、
  関連するページも読む。

(4) このスレのテンプレに紹介されているウェブサイトなどで、グラフィックを
  扱っているサンプルを探してピクチャーボックスに画像を描画する一般的な方法を掴んでおく。

(5) Graphicsクラスのメンバを見て、デバイスコンテキストを取得する方法はないか調べる。

837 名前:831,833 [2005/10/29(土) 17:23:14 ]
>>832->>836
尚、サンプルコードでは、Refresh() した直後には、senssor1のデータ関数を読んでるだけで、
Sensor2のほうはしてないようなので、タイムラグによるデータの変質なのかなとも思いました。
なので、sensor2のほうもsensor1と同時に新たに宣言したstring変数に代入し、更に、sensor2の
データがtext表示される直前に、その変数(温度データ)の長さが2バイトかどうかでデータチェック
して、2バイト以外の場合は、もう一度、refresh()してから変数にとりこむようにしたら、表示
そのもとしては、なんとか格好はついたようです。




838 名前:831,833 [2005/10/29(土) 17:25:44 ]
つまり、sensor1の表示の前に
 Dim sensorname1 As String
Dim sensorname2 As String
Dim sensortemp1 As String
Dim sensortemp2 As String
  sensorname1 = MBMInfo.Sensor(1).ssName
sensortemp1 = MBMInfo.Sensor(1).ssCurrent
sensorname2 = MBMInfo.Sensor(2).ssName
sensortemp2 = MBMInfo.Sensor(2).ssCurrent

を加え、sensor2の表示の直前で

While Len(sensortemp2) <> 2
MBMInfo.Refresh()
sensorname2 = MBMInfo.Sensor(2).ssName()
sensortemp2 = MBMInfo.Sensor(2).ssCurrent
End While

を加えたら、少なくとも表示としては良くなって、「ひょっとして内部的」にも
なんとか、うまく動いているような感じもします。えへへ(-_-;)


839 名前:831,833 [2005/10/29(土) 17:30:10 ]
While Len(sensortemp2) <> 2

While Len(sensortemp2) > 2

のほうがいいですかね


840 名前:デフォルトの名無しさん [2005/10/29(土) 18:27:55 ]
ところで、誰か、Microsoft Visual Studio.net Academic version2002
を使ってる人っていますか?

841 名前:sage [2005/10/30(日) 16:43:44 ]
FlexGridの表の幅をドラッグで変更できるようにするにはどうすればいいのでしょうか?

842 名前:デフォルトの名無しさん mailto:sage [2005/10/30(日) 20:03:03 ]
すいません、質問です。

VB.NET 2003 で作ったアプリのメモリ消費量に関することなのですが、
フォームを表示するだけのアプリでもメモリ16Mぐらい消費しています。
これってこんなもんなんですか?何かやったら減らせるもんなんでしょうか?

レジストリ読み書き(するだけの)ツール作ったらメモリ消費30M近くになって
「iTunesよりすげー」とか言われてショックでした・・・

843 名前:デフォルトの名無しさん mailto:sage [2005/10/30(日) 20:05:37 ]
>>842
.NETはJava並みの重さだからしょうがないよ

844 名前:最凶VB厨房 mailto:sage [2005/10/30(日) 20:16:51 ]
最小化するとWorking Setは減る。

845 名前:デフォルトの名無しさん mailto:sage [2005/10/30(日) 20:44:06 ]
タスクマネージャのメモリ使用量なんて目安の一つでしかないのに随分幅きかせてますね

846 名前:デフォルトの名無しさん [2005/10/30(日) 23:46:17 ]
というかVB.NETの新バージョンはほんとに年内に出るの?

847 名前:デフォルトの名無しさん mailto:sage [2005/10/31(月) 09:17:37 ]
2003と2005では何が変わるんですか?



848 名前:デフォルトの名無しさん mailto:sage [2005/10/31(月) 12:34:20 ]
バグが変わる。

849 名前:デフォルトの名無しさん mailto:sage [2005/10/31(月) 14:21:53 ]
shgetfileinfoでファイルのアイコン取得してるのだけど、最初はいいのだけど
しばらくほっておくと破棄されたアイコンにアクセス出来ないとかってエラーが出る
(タイマーで再表示してる)
これって何がいかんのでしょう

850 名前:デフォルトの名無しさん [2005/10/31(月) 16:30:36 ]
DataTableで、DataTableAからDataTableBにデータを丸写ししたいのですが、
DataTableAには列C、列D、列Eがあり、DataTableBには列C、列Dがあります。
そして、DataTableBは、列順が、列D、列Cとなっています。
こういう場合、CLONEやCOPYだと、スキーマまでコピーされてしまいます。
どなたか、スキーマはコピーせず、データのみを丸写しするよい方法を
ご存じないでしょうか?
よろしくお聞かせ願います。


851 名前:842 mailto:sage [2005/10/31(月) 21:06:51 ]
気にするとハゲるってことですね。
どうもありがとうございました。

>>845さん
あなたを含めた識者はその詳細なメモリ使用量とやらの測り方を知ってるんでしょうけど。
たとえばPCの性能をクロックだけでしか見れないような人も多いですので。
そんなクラスの人はメモリ使用量というとタスクマネージャでしか測れないもんです
(下手するとタスクマネージャすら知らない)。うちもそんなクラスのマです。失格ですね。

852 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 01:03:46 ]
>>850
地道にDataTableAをループ走査。


853 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 01:35:03 ]
vbにはIME周りのAPIはないんですか?

854 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 10:02:16 ]
Control.ImeModeくらいだな

855 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 15:52:01 ]
なんだ、結局
VB.NETのユーザってVBユーザとあんま変わってないのか。

856 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 16:08:45 ]
開発環境が変わった程度で人がそうそう変わるわけはない

857 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 18:21:15 ]
>>856 格言ですな



858 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 18:47:58 ]
人がそうそう変われないのに、開発環境はどんどん変わる。

‥‥せめて互換性は残しておいてよ。orz

859 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 21:36:50 ]
VBAってVB.NETになるんですか?
今からVBA勉強するより、VB.NET勉強しておいたほうがいいですか?

860 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 21:55:40 ]
当分は消えないだろうなぁ……(遠い目

861 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 22:41:16 ]
>>860
あれじゃね・・・・・・・スr(ry

862 名前:半人前 [2005/11/02(水) 00:55:02 ]


VB.net を使用してWindowsの
「ブー」(警告音)
っていう音を出したいのですがどのようなコード
を書けば宜しいでしょうか?

お教え願います。

863 名前:デフォルトの名無しさん mailto:sage [2005/11/02(水) 00:59:45 ]
ビープならBeep関数があるが、それじゃなくて?
コンパネのサウンドで設定するような奴?

864 名前:半人前 [2005/11/02(水) 01:02:07 ]
>>863
>ビープならBeep関数があるが、それじゃなくて?
>コンパネのサウンドで設定するような奴?
レスありがとうございます。
ビープというのは、Windowsの警告音の事を指すのでしょうか?
ちょとVSを立ち上げて【Beep】を試してみます。
どうもありがとうございます(^_^)b



865 名前:半人前 [2005/11/02(水) 01:17:00 ]

すみません。VS2003にて下記のコードを試して
みたのですがどうもうまく行きません。一体何が原因
なのでしょうか?

For i As Integer = 0 To 100
Beep()
Next


866 名前:デフォルトの名無しさん mailto:sage [2005/11/02(水) 01:20:50 ]
何がどううまくいかないんだっての
そこを説明しろ
それだから半人前なんだ

867 名前:半人前 [2005/11/02(水) 01:25:32 ]
>>866
申し訳ありません。
上記のコードをButton押下のタイミングで鳴らそうとして
いるのですが、全く音が鳴りません。

※当方、スピーカー(安物ですが、、、)を一応つけてしっかり
映画を再生すると音が鳴っているのを確認した上で、
上記のコードを実行してはいるのですが一向になりません。




868 名前:半人前 [2005/11/02(水) 01:29:39 ]

失礼しました。一応押下したタイミングで鳴っておりました。
しかしながら、
例え100回ループのコードを記述してもスピーカーから流れる音というのは
「ブ」
 でありできれば
「ブブブブブブブブ・・・」
 といった風に連続で鳴らしたいです。。。


869 名前:デフォルトの名無しさん mailto:sage [2005/11/02(水) 01:35:45 ]
まずそもそもBeep関数で鳴る音は>>862で望んでいる音なのか?
ループ回数を2桁増やしたりしたらどうなのか?

870 名前:半人前 [2005/11/02(水) 01:45:27 ]
上記に関連して一ついい案が浮かんだのですが、
1秒毎にBeepを発生させれば
人間の耳には、ブブブ・・・と聞こえる気が致しました。

そこで、はたまたご質問なのですが1秒毎に実行させたい
場合には、どの様なコードを記述すれば良いでしょうか?

ぐぐって
System.Windows.Forms.Timer
を使うらしいという事は、分ったのですが肝心のサンプル
ソースが無い為に不完全燃焼中です。。。


871 名前:半人前 [2005/11/02(水) 01:50:52 ]
>>869
>まずそもそもBeep関数で鳴る音は>>862で望んでいる音なのか?
>ループ回数を2桁増やしたりしたらどうなのか?
半人前でして、音の種類には特にこだわっていない
ですからひとまずOKです。
あと、二桁増やして For i as integer = 1000 としても
やはり最後の1回分しか音は聞えませんでした。

1秒間隔で鳴らすというのが一番無難なのでしょうか?
私の手元の書籍を参照しても時間制御に纏わる開設が無いので
どうすれば、時間制御が出来るかいまひとつ分りません。
どうか、深夜に申し訳無いですがお教え下さいませ。





872 名前:デフォルトの名無しさん mailto:sage [2005/11/02(水) 07:31:38 ]
1秒だと間があきすぎだと思う。
Sleep(200)くらいでいいんじゃね?

873 名前:半人前 [2005/11/02(水) 08:05:16 ]
>>872
おはようございます。
早速のレスをありがとうございます(^_^)b
試してみます。

874 名前:半人前 [2005/11/02(水) 08:10:38 ]
>>872
解決しました。ありがとう!!

875 名前:デフォルトの名無しさん [2005/11/02(水) 11:28:54 ]
ASP.NET Web Matrixで作成されたシングルファイルをVS.NET 2003のVB.NET ASP Webアプリケーション用の
フォームとコードビハインドのファイル(HTMLとコード部分)に分割する方法というかコツはないでしょうか?

何度やってもエラーが取れず困っております。


※適切な板が見つからなかったのですがASP.NETもこの板でいいのでしょうか?

876 名前:デフォルトの名無しさん mailto:sage [2005/11/02(水) 23:19:27 ]
VS.NET2003プロフェッショナルのVB.NETで開発しています。
↑このパッケージにについてるクリスタルレポートを使って印刷機能を実装しようと思うのですが、
完成したexeを不特定多数に配布してもライセンスは問題ないでしょうか?
またクライアントにexe以外の何かを入れないと動かないのでしょうか?


877 名前:デフォルトの名無しさん mailto:sage [2005/11/03(木) 02:51:32 ]
起動時に解像度の変更をしたくて、

    Imports Microsoft.DirectX
    Imports Microsoft.DirectX.DirectDraw

Dim device As New Device
Dim Width As Integer
Dim Hight As Integer

Width = 800
Hight = 600

Me.FormBorderStyle = FormBorderStyle.None
device.SetCooperativeLevel(Me, CooperativeLevelFlags.Exclusive Or CooperativeLevelFlags.Fullscreen)
device.SetDisplayMode(Width, Hight, 16, 0, False)

フォームロードにこんなコードを書いてみたのですが、実行すると数秒で解像度等々元に戻ってしまいます。
ずっと設定の解像度を保持してるには、どうしたらよいのでしょうか?

望む動作としては、ゲームにあるような解像度を変えつつ、フルスクリーン表示という感じです




878 名前:デフォルトの名無しさん [2005/11/04(金) 14:23:53 ]
WB.NET+ASP.NETで開発をしております。
ボタンを押された時にメッセージボックスを出すような処理を作ったのですが
メッセージ表示時に何故か画面がリロードされてしまうのです。
ネットのサンプル等を見るとリロードせずに普通にメッセージが出ているのですが
何が原因なのかわかりません。詳しい方教えてください。

Response.Write("<script language=JavaScript>window.alert('aaa')</script>")

これだけなんですが・・・

879 名前:デフォルトの名無しさん mailto:sage [2005/11/04(金) 21:15:04 ]
>>878
runat="server"になってないか?

880 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 13:22:33 ]
質問です。
delegateとeventは、いったい、何が違うのでしょうか?
調べれば、調べるほど、「????」と、なってしまいます・・・。
eventは、handles句で、静的に関連付けができるとかなのか・・・。

881 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 13:48:55 ]
>>880
@ITのVB.net入門にその記述があったような無かったような。

882 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 13:50:07 ]
delegateは型。
eventはdelegateのインスタンスに対するプロパティ的存在。

883 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 17:00:12 ]
Public Declare Function SelectObject Lib "gdi32" (ByVal hdc As Integer, ByVal hObject As Integer) As Integer

hDC = GetDC(Picture1.Handle.ToInt32)
hbmp = CreateCompatibleBitmap(hDC, ImgX, ImgY)
hSelObj = SelectObject(hDC, hbmp)
とした時にエラーコード126(モジュールが見つからない)が返るんですけど何故なんでしょう
hDCとhbmpには値が返っています(hSelObjは0)

884 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 17:40:25 ]
再現しないな
関係ないがハンドルはIntPtr型で宣言すれ

885 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 20:14:52 ]
エラーコード126ってそれ。。

886 名前:デフォルトの名無しさん [2005/11/07(月) 01:20:21 ]
すみません。
どなたか暇つぶしに教えてくださいませ<m(__)m>

1)ドイツ語単語(などの外国語単語)をテキストファイルに
1行1単語ずつバーッと書いてあるものを用意する。

2)単語ごとにttp://www5.mediagalaxy.co.jp/sanshushadj/
(←ドイツ語の場合)のような辞書サイトに検索させる。

3)1単語につき1ブラウザ開くようにする
(だから300単語とかになるとひどいことになるけど……)

3’)もしくは検索結果のみを1ファイルに書き込む。


……というようなことをVB.NETをつかってやりたいのですが
(EXCEL VBAとかでもいい)、具体的にどうすればいいのか、
いまから自分で調べたりしてると時間がないので、
お知恵をお借りしたく、投稿させていただきました。


887 名前:デフォルトの名無しさん [2005/11/07(月) 02:45:02 ]
www.ringolab.com/note/daiya/archives/002070.html
をみてWebサービスで翻訳する



888 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 07:43:30 ]
時々セーブデータで
[configre]
a1 =50
a2 =90
みたいな書式のデータ見るんだけど、あれって何使って出力すればいいの?

889 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 07:55:12 ]
ストリームライターで、ってことじゃ無くて?

890 名前:デフォルトの名無しさん [2005/11/07(月) 09:37:21 ]
PanelをFixed3Dに設定した場合凹んで見えるのがデフォルトみたいですが
逆に見えるようにするにはどうすればいいですか?

891 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 10:16:53 ]
PocketPC用のソフト作ってます。
compact framework で使えるグリッドコンポーネントってないでしょうか?
セルの色さえ指定できればいいんですが。
グレープシティのを見かけたけど、抱き合わせ販売で高すぎ。。

892 名前:デフォルトの名無しさん [2005/11/07(月) 11:23:53 ]
今考えているのですか、ちょっとしたポータルサイトを作ろうとした場合
.netとsql serverがあればつくれますか?
登録されたアドレス等をsqlに溜め込んでHP上でselectしてあげれば
いい気がするのですが、普通にできますかね?

893 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 15:21:54 ]
>>888
Win32APIのGetPrivateProfileString、
WritePrivateProfileStringをMSDNなりぐぐるなりで調べてみるといい

894 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 18:41:06 ]
>>886
"www5.mediagalaxy.co.jp/CGI/sanshushadj/search.cgi?cmd=list&serch2=%8C%9F%8D%F5&key_word="
この文字列の末尾に、調べたい単語を連結したURLにアクセスすればいい。

以下のリンクをクリックすると"ich"の検索結果が出る。
www5.mediagalaxy.co.jp/CGI/sanshushadj/search.cgi?cmd=list&serch2=%8C%9F%8D%F5&key_word=ich

895 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 19:05:17 ]
>>888
>>893の言う通りMSDNで調べて、使えそうだと思ったら以下の使ってみるといい。
ヌル文字、ヌルポインタなどのC言語の知識が少し必要になるけどね。
もし使いたければ以下のAPI宣言文を使ってくれ。

Public Declare Function GetPrivateProfileSection Lib "kernel32" Alias "GetPrivateProfileSectionA" _
(ByVal lpAppName As String, ByVal lpReturnedString As String, ByVal nSize As Integer, ByVal lpFileName As String) As Integer
Public Declare Function WritePrivateProfileSection Lib "kernel32" Alias "WritePrivateProfileSectionA" _
(ByVal lpAppName As String, ByVal lpString As String, ByVal lpFileName As String) As Integer

Public Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" _
(ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Integer
Public Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPrivateProfileIntA" _
(ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal nDefault As Integer, ByVal lpFileName As String) As Integer
Public Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" _
(ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, _
ByVal lpReturnedString As String, ByVal nSize As Integer, ByVal lpFileName As String) As Integer

896 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 19:26:22 ]
そんな面倒なことしてまでWin32API使うことないんでないの?
自分で書いたってたいしたことないと思うんだけど。

作るときはフツーにテキストファイルに書くだけ。
読むときは一行ごと読んで“=”ぶったぎってアイテムと値を分けるだけ。
何も難しくないじゃん。

897 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 19:31:23 ]
XmlSerializerやらSoapFormatterやらなら考える必要もほとんど無いが。



898 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 20:09:39 ]
>>896
コメントやらセクションやらを考えるとメンドクセ
おっと、それなりの大きさの規模のアプリケーションを作った事の無い人でしたか。
毎回ご自分でその位実装してくださいね。

899 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 21:07:21 ]
>>898
馬鹿じゃないの。
キミ、自分でそういうコード書いたことないでしょw
Win32API使えば面倒じゃないとでも思ってるのかね。
シリアライズ/デシリアライズしてくれるわけでもなく、結局アイテムを
一つずつ書き出し/読み出ししなきゃならないわけで、そんなものの
いったいどこにメリットがあるのか。

リストみたいなものも保存できないしね。
自分でスルスクラッチすればどうってことないのに。

セクション?
そんなもの実装するのわけないだろ普通。

900 名前:895 mailto:sage [2005/11/07(月) 21:34:31 ]
偉そうに書いてしまった>>895の宣言文は一部間違ってたわ。
As Anyは.NETではエラーになる。スマン。
以下を参照してくれ。
ttp://www5b.biglobe.ne.jp/~yone-ken/VBNET/special/sp06_GetPrivateProfileString.html

901 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 21:58:21 ]
APIコールすんのが面倒臭いから同じ処理を自力で書くのか?
結果が同じなら先人の資産を活用する方が楽に決まってるだろ。
APIをコールするやり方知らないだけじゃん m9(^Д^)プギャー
セクションを実装しないiniファイル? ハァ( ゚Д゚)? それiniじゃねーだろwww
スルスクラッチってどこの世界の単語なんだよwww


902 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 01:26:31 ]
なにこの必死な奴が多いスレ

903 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 02:25:07 ]
>>899
設定ファイルにコメントが書けるのってのは非常に重要だし、設定ファイルの更新をしたときに元のファイルの体裁が残っている事も重要。それを真面目に実装すると結構な手間になる


904 名前:デフォルトの名無しさん [2005/11/08(火) 09:40:18 ]
お世話になります

VB.netでタイマーを3つ用意し、1つをプログラム起動時に停止(仮称A)、1つをAからの差を取り
カウントダウンタイマーとし(仮称B)、1つをBが0カウントになった時点で起動(仮称C)
というものを作っていますが
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Timer1.Stop()

timers1 = (Now)

Label1.Text = timers1

End Sub

Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick

REM 時間の演算
' 時間計算の問題を解決すること
' 1 キャスト問題を解決すること
' 2 タイマー2つの時差をとること
timers2 = (Now)

Label2.Text = CDate(CDate(timers2) - CDate(timers1)) REM この演算を入れると死ぬ
                           ' キャストが悪さしてるみたい
どうやってもうまくキャストできません
どなたか妙案があったら御教授願います


905 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 09:53:06 ]
>>904
秒単位の精度でいいなら、DateDiff関数でいいんでは?

906 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 10:20:24 ]
つか減算よりも比較演算の方が良くないか?

907 名前:デフォルトの名無しさん [2005/11/08(火) 12:01:22 ]
Panelの凹凸は逆に出来ないんでしょうか?



908 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 12:35:43 ]
>>904
キャストが悪さしてるみたい、ってそれ確認したの?
本当にそれが原因か確認する方法を考えた?
っていうか、エラーの内容は?
んなことやってると永遠に三流PGでっせ。

MSDN見るとVBの日付型の正体はDateTime構造体だとわかる。
DateTimeに対して‘-’演算子は定義されているんだろうか。

909 名前:904 mailto:sage [2005/11/08(火) 12:43:28 ]
>>905,906
ありがとうございます
とりあえずカウンタをすべて動かすところまではいけました
またお願いします

>>908
ありがとうございます
三流だなんてとんでもない 中途入社のVB暦1週間のペーペーです
またお願いします

910 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 12:51:58 ]
>>907
自分で派生クラスを再定義すればいけるかもしれんね。
そんな手間かけるくらいなら、画像ファイルを用意してピクチャ貼り
した上にコントロール配置したほうが楽かも。

911 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 13:03:40 ]
ここで聞くもんかわからんが
VBCommenterっていうコメント書きアドインツールがあるんだが
米サイトからDL出来なくなってる(エラーになる)
どこかミラーでおいてあるところ無い?

912 名前:デフォルトの名無しさん [2005/11/08(火) 14:46:34 ]
今までVB 6で開発してましたが、遅まきながら.NETに移行しようと思います。

そこでちょっと調べたのですが、.NET用の市販ライブラリがあまり見つかりません。
今まではVB 6の標準コントロールが貧弱ということもあり、ほとんどのコントロールは
購入したライブラリのものを使用していました。

皆さんは、.NET用の市販ライブラリはどのようなモノを使っていますか?
グレープシティやWindows Developerマガジンを調べてみたのですが、
他にもどこかで紹介されているサイトがありましたら、お教えいただきたく。

それとも、使う必要の無いほど.NETのライブラリは高機能なんでしょうか。


913 名前:デフォルトの名無しさん [2005/11/08(火) 14:58:21 ]
>>912
まず、どんなライブラリが必要か列挙したほうがいんじゃまいか?

914 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 15:20:19 ]
親クラスが overridable されているかどうかを調べる方法は
ありますか?

例えばグレープシティの InputMan の EditMode を
overrides したかったのですが EditMode が overrides できなかった
ので、overridable されているかを調べたくなりました。

方法があれば知りたいのでよろしくお願いします。



915 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 15:21:33 ]
普通はリファレンスに書いてるんじゃね?

916 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 15:27:16 ]
それが書いてないんですよね。

例えば
Public Property ControlEffect As GrapeCity.Win.Input.ControlEffect
は overrides できて、
Public Property EditMode As GrapeCity.Win.Input.EditMode
はできない。

リファレンスじゃわからないんですよね。

というか、リファレンスを見るしか方法ないんですかね?

917 名前:デフォルトの名無しさん [2005/11/08(火) 17:21:56 ]
VB6の「debug.print」は、vb.netでは「system.Diagnostics.Debug.WriteLine」ということですが
VB6のイミディエイトウインドウのようなものは、visual studioに無いのでしょうか?




918 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 17:41:18 ]
ある
ほとんど同じ使い方が出来る

つか、ヘルプ見(ry

919 名前:917 [2005/11/08(火) 18:08:28 ]
Microsoft Script Debugger でしょうか?
表示メニューでは選択できませんが、どうやって表示するのでしょうか?

920 名前:912 [2005/11/08(火) 18:17:02 ]
>>913 あ、すいません。カテゴリーを示すことにしますが、そうすると次に
「どんな仕様なら良いんだ?」とさらに質問が来そうなので、今使っている
コントロールを示すことにします。

入力系:グレープシティ InputMan
グリッド系:グレープシティ SPREAD
グリッド系:グレープシティ VS-FlexGrid
フォーム系:グレープシティ Active 3D Plus
フォーム系:グレープシティ VS-Resizer
グラフ系:グレープシティ True WinChart
ヘルプ系:グレープシティ True Help
インストール系:グレープシティ InstallStudio
帳票系:H.O.S シーオーリポーツ

グレープシティのものが多いですが、これは文化オリエント時代のVBXから
使っているというだけで、気に入ってるわけではありません。
ですから、.NET用はグレープシティのものではなく、他社のモノも
使ってみたいと思います。

921 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 18:35:05 ]
>>919
コマンドウインドウというのがそれにあたる
> ←これが出てるから
immedと入力するとデバッグ中に変数の中身表示させたり出来る

922 名前:917 [2005/11/08(火) 18:48:47 ]
>>921
どうもありがとう。助かりました。
「表示」の「その他ウインドウ」に気づきませんでした。


923 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 18:49:02 ]
Debug.Print は Console.WriteLine で置き換え
出力のウインドウで確認

924 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 18:59:38 ]
C# から VB.NET に移行してきました。
コントロールのイベントの追加の方法を知りたいのですが、
C#はコントロールを選択してプロパティの画面から追加するイベントを
選択してコードを書いていくのですがVB.NETの場合はコード画面の
上のほうにあるコンボボックスの左側からコントロールを選択し、
その右のコンボからコードを追加したいイベントを選択するという方法
になるのでしょうか?
これ以外のイベントの追加の方法がありましたら教えてください。

あと、複数のコントロールで発生したイベントで処理する内容が同じ場合、
Handles のうしろに、そのイベントで処理したいコントロールを
手書きで追加していくっていうやり方であっていますか?
これもC#の場合はプロパティの部分でイベントを開くと既に存在する
関数が一覧で表示されそこから選択する事ができたので、
VB.NET でも同じように IDE で処理する方法があれば教えてください。


925 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 19:00:31 ]
なんでそんな移行するんだろう

926 名前:917 [2005/11/08(火) 19:31:29 ]
>924

>その右のコンボからコードを追加したいイベントを選択するという方法
>になるのでしょうか?

そうです。

>これ以外のイベントの追加の方法がありましたら教えてください。
私にはわかりませんので、レスを待ってください。

>あと、複数のコントロールで発生したイベントで処理する内容が同じ場合、
>Handles のうしろに、そのイベントで処理したいコントロールを
>手書きで追加していくっていうやり方であっていますか?

あってます。

927 名前:デフォルトの名無しさん [2005/11/08(火) 21:17:35 ]
ラベル コンボボックス ピクチャボックス

これら全てを表示はさせつつ、
一つのチェックボックスがチェックされていないと構えないようにしたいんだけど、
どうしたらいいですかね?
visible=falseは消えちまうからイクナイ



928 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 21:28:55 ]
C#でいうところの using() {} のように 自動でIDisposable させる為の
構文はVB.NETにありますか?

929 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 21:30:07 ]
enabled=false
つーかラベルをどういじるの?

930 名前:デフォルトの名無しさん [2005/11/08(火) 21:32:31 ]
なんつうか、グレー表示にならんかな

931 名前:デフォルトの名無しさん [2005/11/08(火) 21:33:09 ]
>>929
えーと、これチェックしたらコレ使えるで、みたいな雰囲気を出しときたい

932 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 21:37:23 ]
自分でコントロール作ればいいんだよ。
ラベルなりなんなり継承して。
そんなの三分もあれば出来るよマジで。

933 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 21:47:14 ]
windows.formsなアプリで、起動直後に設定ファイルの有無の判断を行ない、
設定ファイルがある場合フォーム(A)を表示、なければ設定用のフォーム(B)
を表示といったアプリケーションを作りたいと思っています。

この時、A.exeを起動して設定ファイルのチェックをし A.exe のフォームを
表示せずにB.DLLを表示させられなくてつまづいています。
A.exeのフォームが必ずでてしまいます。

A.exe を起動しつつ、A.exeのフォームを表示したくない場合には
どのようにすべきでしょう?


934 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 21:51:38 ]
>>928
現在無し。2005から。

935 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 22:02:53 ]
モジュール作ってプログラムのプロパティのスタートアップの設定で
そのモジュールにする
で、そのモジュール(のmain)でApplication.Run(_form1)の前にForm2.Showdialogかな?

936 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 22:03:34 ]
>>933
適当なクラスにMainって共有メソッドを作って
そいつをプロジェクトのスタートアップにすべし。
っていうか、こんなのドトネトのTips紹介してるサイトをちょっと巡れば
調べがつくでしょ。

937 名前:933 mailto:sage [2005/11/08(火) 22:06:53 ]
ありがとうございます。
自分で Main メソッドを作ればいけるんですね。
助かりました。



938 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 23:16:16 ]
オプション画面を作る時、左側のツリー選択で右側の画面を切り替える場合は、新しいフォームのインスタンスを作って右側だけに呼び出すという形でいいのでしょうか?
それとも、もっと一般的な形があるんでしょうか?

939 名前:デフォルトの名無しさん [2005/11/09(水) 00:08:57 ]
>>938
Formを普通のコントロールにして右にLoad

TopLevelだっけかな?

940 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 00:10:23 ]
ナンノコチャw

941 名前:デフォルトの名無しさん [2005/11/09(水) 00:15:10 ]
TopLevel = FalseにしないとForm内にFormを追加できねぇ

942 名前:904 [2005/11/09(水) 12:10:31 ]
1つのソースで完結する(ビルドできる)ソースファイル2つを
1つの実行ファイルにまとめたい(ソース1でソース2に記述したクラスを
呼び出す?)のですがMSDN見てもやり方がまったくわかりません

実際こういうことは不可能でソース2を解体してソース1に組み込まないとだめなのでしょうか?

943 名前:904 mailto:sage [2005/11/09(水) 14:10:58 ]
>>942は解決できました
ありがとうございました

944 名前:デフォルトの名無しさん [2005/11/09(水) 16:21:38 ]
今日VB.NET始めたばっかですが質問させてください
テキストボックスに入力した値を変数xに入れて
別の変数nを10のx乗させて変数yに格納したいんですが
Dim y As Double = n * E(x)
これだとだめでした
どうしたらいいんでしょうか^^;

945 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 17:03:23 ]
べき乗するなら
^
を使う
10^2 は 10の2乗^^


946 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 17:15:50 ]
E(x)って書くと、「xを引数として関数Eをコールする」か「配列Eのインデックスx番の値」って意味になっちゃう。

階乗演算子は ^
10のx乗は 10^x

変数nを10のx乗するってのは意味がわからんけど、察するに以下のようにすればいいと思う。
Dim y As Double = n * (10^x)

947 名前:944 mailto:sage [2005/11/09(水) 17:44:30 ]
>>945-946
できました!
ありがとうございます^^



948 名前:デフォルトの名無しさん [2005/11/09(水) 19:56:38 ]
ファイル→新規作成→プロジェクト→新しいプロジェクト→OK
とすると「オブジェクトでサポートされていないプロパティまたはメソッドです。」
と出て、新しく始める事ができません。
どうか、解決策を教えてください。

949 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 20:16:06 ]
開発環境を入れ直せ。

950 名前:デフォルトの名無しさん [2005/11/09(水) 20:37:23 ]
>>949
ありがとうございます。さっそく、やってみます。

951 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 20:47:01 ]
>>938
PanelかUserControlを派生させて、そこにそれぞれの画面を作る。
Formにそれぞれを重なるように配置して、表示するのを変えるにはそのコントロールをBringToFrontする。

952 名前:948 [2005/11/09(水) 21:23:14 ]
探したのですが、どこで開発環境の変更をするかわかりません。
誰か、教えてください。

953 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 21:26:12 ]
変更って何?

954 名前:948 [2005/11/09(水) 21:28:43 ]
間違えました。入れ直す、でした。

955 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 22:33:41 ]
vb.net で作成した DLL(Windows.Forms) を、参照設定する事なく、
インスタンスの生成を行ないたいのですが(フォームの表示をさせたい)
実現させる方法はありますか?



956 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 22:38:20 ]
System.Reflection.Assembly.LoadFromでアセンブリをロードして、
そのAssemblyでGetTypeして型情報を取得、
System.Activator.CreateInstanceでその型のインスタンスを作成。

957 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 23:02:51 ]
ありがとうございます。

GetType する時にクラス名がわかっていないといけないようですが、
クラス名がわからなくてもアセンブリのインスタンスを生成する
なんて事はできないでしょうか?





958 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 23:11:48 ]
型名も分からないのにインスタンスを作るってのもなかなか有り得ないと思うが……。
Assembly.GetTypesでType配列を取得して、それぞれBaseTypeを遡っていって調べてみるとか。

> アセンブリのインスタンスを生成する
これは意味不明だ。

959 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 07:48:54 ]
>>952
VisualStudioをアンインストールして
もう一度インストールする

960 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 09:38:57 ]
あるDBのマスタテーブルからデータを読み込む(書き込む機能は不要)クラスを作るとした時。
このデータの読み込むタイミングは以下のどちらが一般的でしょうか?

・コンストラクタでマスタのCodeを渡して読み込む
・コンストラクタでは何もせず、DataRead(Code)のようなメソッドを持ちそこで読み込む

上司に「コンストラクタは初期化なんだから何もせず、読み込むメソッドを持った方がいい」と指摘をうけたのですがどうなんでしょう。
なんか「初期化」の意味を取り違えてるような気がしないでもないのですが・・・
作る側としては読み込むメソッドを持つと、使う側で呼び忘れてエラーの元になってしまうと思ったので
コンストラクタで読み込んでしまうような作り方をしていました。


961 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 09:45:39 ]
一般的にはその上司の言が正しい。
特に処理が重くなる場合はコンストラクタに実装するのは避けるべき。

962 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 12:27:53 ]
ケースバイケースだろうけど俺は>>960の設計の方をむしろ推すね。
要するに読み込みを非同期にすりゃいいだけでしょ?
客から注文もらってから問屋に注文だすような店なら最初からイラネ。

963 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 12:58:49 ]
コンストラクタではまず重い処理はやるべきではない。
次に、どっちにも対応すればいいんだから・・・。

上司コンストラクタ − インスタンス生成だけ
>>960コンストラクタ − 生成して検索関数呼ぶ
検索ぱぶりっく関数 − 検索実行

面子潰さず、自分の意見通しつつ。

964 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 16:32:06 ]
textboxコントロールがフォーカスを受け取った時にコントロールの
背景色を変えようと思っているのですが、
フォーカスを受け取ったイベントとして、
Enter を使うべきか、GotFocus を使うべきか、どちらを
使うべきでしょうか?


965 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 16:39:18 ]
Enterを使うべきだとあちこちに書かれてると思うんだが。
GotFocus使ったらフォームをアクティブにしたときも発生したりするぞ。

966 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 17:09:41 ]
VB.NETのIF文で最初の条件がFALSEの場合2番目以降の比較は行なわないように
記述する方法はありますか?
dim x as boolean = false
dim y as boolean = true
if(x and y = nothing) then
の場合、xがFALSEなのでyの値が何であっても条件に該当しないので
このように最初の条件がFALSEになった場合、それ以降の条件判断を
して欲しくないのですが。IF文を2つにわけるしかないでしょうか?
よろしくお願いします。

967 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 17:15:09 ]
AndAlso
ちょっとはリファレンス見ようぜ



968 名前:960 mailto:sage [2005/11/10(木) 17:48:52 ]
>>961
>>962
>>963
レス感謝です。

「コンストラクタには重い処理を書くべきではない」ってのを今日まで知りませんでした。
1万件のレコードを、960に書いた2通りの方法でそれぞれ試してみましたが時間的な差は無かったです。
なにか実感できるようなサンプルってありますか?

969 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 18:02:03 ]
厳密にはデバッグできなくなるって理由でないの?>コンストラクタに書かない

970 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 18:29:26 ]
>>968
>「コンストラクタには重い処理を書くべきではない」ってのを今日まで知りませんでした
単に961の俺様ルールだと思うよそれ。
だってそんなルールに何の合理性のないじゃん。
すくなくとも無条件にいつでも合理的とはいえないよ。

というか、重いなら単に非同期で処理すればいいだけの話で
どうせ必須の引数なら最初から受け取っておく、必須の処理なら最初からやっておく
これが普通の考え方でしょう。
もちろん「特に理由がない限りにおいては」ね。

971 名前:デフォルトの名無しさん mailto:sage [2005/11/10(木) 18:35:08 ]
つ コンストラクタの使用方法のガイドライン

972 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 01:03:50 ]
Cで作った xxx.dll 中の

typedef struct {
  int a;
  int b[50];
} X;
int test(X *z) {}

な関数を、VBで、

Structure X
  Dim a As Integer
  Dim b(50) As Integer
End Structure
Declare Function test Lib "xxx.dll" (ByRef z As X) As Integer

として使おうとしたのですが、VBでは構造体に固定長配列が使えないらしく、
エラーが出てしまいます。
構造体の中では b() だけ宣言して後でReDim b(50) しても、
アドレス的に a に連続しないのか、test を呼び出したときに落ちます。
どうしたらいいでしょうか。

973 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 03:50:01 ]
C#.NETでは書けて、VB.NETで書けないものってありますか?

974 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 04:40:09 ]
>>972
Imports System.Runtime.InteropServices 'コードの先頭で宣言

<MarshalAs(UnmanagedType.ByValArray, SizeConst:=50)> _
Dim b() As Integer

>>973
VB2005で可能になるけど、カスタムイベント、演算子のオーバーロード、XMLドキュメントあたり。

975 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 09:27:36 ]
つうか、コンストラクタで非同期処理なんてしてほしくないよな。


976 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 12:58:19 ]
>>973
unsafe コード

977 名前:デフォルトの名無しさん [2005/11/11(金) 15:05:20 ]
質問です。

データグリッドで、1つのセルに文字を打ったとき、
打たれた文字を判別することはできますか?

データベースと連携させていて、aと打たれたらaから始まるコード(商品コードなど)を
そのセルの部分でコンボボックスで表示させたいのですが。



978 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 22:33:10 ]
>>973
using

979 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 22:54:59 ]
>>977
データグリッドの編集中のセルの正体はTextBoxだから
そのTextBoxへの参照を取得すればなんでもできるんじゃない?

TextBoxへの参照を取得する方法は・・・忘れたけど別に難しくないというか
裏技的なものは何もなく、なにかのオブジェクトのプロパティで明示的だったと思う。

ていうかデータグリッドの使い方紹介してるサイトなんていっぱいあるでしょ。
こんなところで質問しなくても。

980 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 23:19:59 ]
>>968
常に全件を抱え込むオブジェクトならどっちで実装しても差は無いと思う。
けれど、Formで使用するマスタデータを管理するクラスなんかだと常に全件が必要なわけ
でもないからメソッドやプロパティが呼び出された時に初めて実際にDBへアクセスするとい
うProxyパターンを適用するのも一つのやり方。
Formを開くたびにマスタ読み込みで数秒待たされるというのはUIの設計としてもマズイ。


981 名前:最凶VB厨房 mailto:sage [2005/11/12(土) 09:38:46 ]
次のスレッドはこちら

VB.NET質問スレ (Part13)
pc8.2ch.net/test/read.cgi/tech/1131755402/






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前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