1 名前:デフォルトの名無しさん [04/07/03 08:49] VB.NETの質問全般です 過去スレ 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) pc2.2ch.net/test/read.cgi/tech/1056281084/ 【老若】VB.net質問スレ【男女】 (Part2) pc2.2ch.net/tech/kako/1043/10436/1043629429.html 【老若】VB.net質問スレ【男女】 pc2.2ch.net/tech/kako/1025/10258/1025848458.html
2 名前:デフォルトの名無しさん [04/07/03 08:49] どぼん!のVB道のトップページとTipsページ dobon.net/vb/ dobon.net/vb/dotnet/index.html Microsoftクイック スタート チュートリアル ja.gotdotnet.com/quickstart/default.aspx リソースセンター> .NET関連リンク www.atmarkit.co.jp/fwin2k/rescenter/indexpage/net.html Insider.NET www.atmarkit.co.jp/fdotnet/index.html @IT: 連載 VB.NETプログラミング www.atmarkit.co.jp/fdotnet/vb6tonet/index/index.html @IT:連載 改訂版 C#入門 www.atmarkit.co.jp/fdotnet/csharp_abc2/index/index.html C#プログラミングTips www.atmarkit.co.jp/fdotnet/csharptips/index/csharptips_index.html
3 名前:デフォルトの名無しさん mailto:sage [04/07/03 08:50] 宇宙仮面の C# プログラミング / C# Programming ukamen.hp.infoseek.co.jp/ VB.NETとC#でデザインパターン hccweb1.bai.ne.jp/tsune-1/ ConvertCSharp2VB www.kamalpatel.net/ConvertCSharp2VB.aspx WisdomSoft 〜Developers Network〜 black.sakura.ne.jp/~third/ CodeProject www.codeproject.com/vb/net/ the GotDotNet Home Page www.gotdotnet.com/ KEN's .NET www5b.biglobe.ne.jp/~yone-ken/VBNET/index.html ソース置き場.NET do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049 Cetus Links: 19,498 Links on Objects and Components / .NET www.cetus-links.org/oo_dotnet.html
4 名前:デフォルトの名無しさん mailto:sage [04/07/03 08:51] 関連スレ VisualStudio.NET(MSDN Deluxe) Part12 pc2.2ch.net/test/read.cgi/tech/1071070472/ ふらっとC♯(Part5) pc2.2ch.net/test/read.cgi/tech/1065196964/ C♯相談室 Part14 pc2.2ch.net/test/read.cgi/tech/1076933504/ managed C++ やろうぜ!! pc2.2ch.net/test/read.cgi/tech/1014486422/ フリーの.NET統合開発環境「SharpDevelop」 pc2.2ch.net/test/read.cgi/tech/1023727377/ 消しゴムじゃない方のMONOを使ってみるスレ pc2.2ch.net/test/read.cgi/tech/1020215602/ ♯♯♯Shared Source CLI ♯♯♯ pc2.2ch.net/test/read.cgi/tech/1024222901/ VBプログラマ質問スレ(6.0以前) Part32 pc2.2ch.net/test/read.cgi/tech/1077216109/
5 名前:デフォルトの名無しさん mailto:sage [04/07/03 08:51] .NET TIPS www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html 緑のバイク ★ 初めてのC# プログラム全般 homepage3.nifty.com/midori_no_bike/CS/ MSDN 言語仕様などのリファレンス www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vbref/html/vbmscLROverview.asp?frame=true サンプルコード www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vbref/html/vboriVBVCSharpSamples.asp?frame=true .NET Framework を使用したプログラミング www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconprogrammingwithnetframework.asp?frame=true .NET Framework リファレンス www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/netstart/html/cpframeworkref_start.asp?frame=true
6 名前:デフォルトの名無しさん mailto:sage [04/07/03 08:52] .NET Framework のランタイム テクノロジに関するパフォーマンス上の注意事項 www.microsoft.com/japan/msdn/net/general/dotnetperftechs.asp Microsoft .NET Framework の Windows フォームを使用したペインティング テクニック www.gotdotnet.com/japan/team/windowsforms/windowsformspainting.aspx ガベージコレクション入門: Microsoft .NET Framework の自動メモリ管理 Part I www.microsoft.com/japan/msdn/net/mag00/GCI.asp C# プログラミング言語の将来の機能 www.microsoft.com/japan/msdn/vs/vcsharp/vbconCProgrammingLanguageFutureFeatures.asp 適当に選んだ資料。
7 名前:デフォルトの名無しさん mailto:sage [04/07/03 08:52] 他 www.ne.jp/asahi/nami/mei/dotnetlink.html www.atmarkit.co.jp/fdotnet/tools/index/index.html
8 名前:デフォルトの名無しさん [04/07/03 08:53] ドットネット2.0ベータはどこ?
9 名前:デフォルトの名無しさん [04/07/03 14:08] モツ>1
10 名前:デフォルトの名無しさん mailto:sage [04/07/03 14:17] JScript .NETはこちらで: ECMAScript デス 2 pc5.2ch.net/test/read.cgi/tech/1088298991/l50
11 名前:デフォルトの名無しさん mailto:sage [04/07/03 14:54] ArrayListに登録されている要素のメンバを書き換えるにはどうすればよいでしょう? dim data as T_HOGE dim list as ArrayList list = new ArrayList data = new T_HOGE data.code=1 data.name="いち" list.Add(data) data = new T_HOGE data.code=2 data.name="に" list.Add(data) この状態で data = CType(list(1), T_HOGE) data.name = "" としてもlist内の登録内容は書き換わっていません。itemメソッドや foreachで要素をとってきても同様です。 Remove/Insertは参照が変わってしまうので使いたくありません。 うまい方法はありませんか?
12 名前:デフォルトの名無しさん mailto:sage [04/07/03 19:25] T_HOGEがstructureなら data = CType(list(1), T_HOGE) でArrayListの中身がコピーされているからそっちを書き換えても値は変わらない。 必要なら中身を書き換えて後 list(1)=data として置き換えれば?
13 名前:デフォルトの名無しさん [04/07/03 22:30] DBに非接続のDataSetに作成したDataTableを使って CristalReportで帳票を作りたいのですがどういったやり方があるでしょうか?
14 名前:デフォルトの名無しさん mailto:sage [04/07/04 00:47] >>11 >>12 の言ってることの可能性が高いな。 Structにしてるのはなぜだ? ArrayListに入れるんならクラスの方がまずまず無難だと思うが…
15 名前:デフォルトの名無しさん mailto:sage [04/07/04 03:12] >>13 VisualStudio.NETのCrystalReportならサンプルくらいあるんじゃないの?
16 名前:13 [04/07/04 09:54] >>15 これだというサンプルは無かったけど なんとか自力でできた
17 名前:デフォルトの名無しさん [04/07/04 11:16] やりたいことは、フォルダーのコピーです。 とりあえず、FileSystemObjectでそれはできたのですが、 もう一度コピーを実行するとエラーがでるので、 コピー先のフォルダがある場合は削除しました。 ところが、含まれるファイルが読みとり専用だとエラーがでます。 どうしたら良いでしょうか? If System.IO.Directory.Exists("C:\TEST") Then System.IO.Directory.Delete("C:\TEST", True) End If FSO = CreateObject("Scripting.FileSystemObject") FSO.CopyFolder("D:\TEST", "C:\TEST", True)
18 名前:デフォルトの名無しさん mailto:sage [04/07/04 13:01] >>17 フォルダの削除もFSOを使ってみるとか・・・
19 名前:デフォルトの名無しさん [04/07/04 20:30] サンクスです。 FSO folderでググって見たら、一発で回答を見つけました。
20 名前:デフォルトの名無しさん [04/07/05 01:20] 既存項目の追加で追加したwavファイルを再生するにはどうしたら良いでしょうか?
21 名前:デフォルトの名無しさん mailto:sage [04/07/05 12:17] >>12 > list(1)=data これですか!目から鱗が… 助かりました。どうもありがとうございます。 >>14 先に構造体ありきで進めちゃっているもので、今からクラスには できないのです。
22 名前:デフォルトの名無しさん [04/07/05 15:33] ある画像の上(?)に線を引き、その線の一部分をペイントの消しゴムのように 消したいのですが、いい方法ないでしょうか? 線を引くまでのロジックはこんな感じです。 Private grpTest As Graphics Private bmpTest As Bitmap Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim fs As IO.FileStream Dim bmpImage As Bitmap Dim blackPen As Pen blackPen = New Pen(Color.Black, 1.0) fs = New IO.FileStream("C:\TEST.JPG", IO.FileMode.Open, IO.FileAccess.Read) bmpImage = New Bitmap(fs) fs.Close() '空のbitmap領域の作成 bmpTest = New Bitmap(bmpImage.Width, bmpImage.Height) grpTest = Graphics.FromImage(bmpTest) grpTest.DrawImage(bmpTest, 0, 0, bmpImage.Width, bmpImage.Height) PictureBox1.Image = bmpImage '線引き grpTest.DrawLine(blackPen, 0, 0, bmpImage.Width, bmpImage.Height) PictureBox1.Invalidate() End Sub
23 名前:22 [04/07/05 15:33] 続きです Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint If IsNothing(bmpTest) = True Then Exit Sub End If e.Graphics.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic e.Graphics.DrawImage(bmpTest, 0, 0, sender.width, sender.height) End Sub
24 名前:デフォルトの名無しさん mailto:sage [04/07/06 00:45] >>21 まあ、変えられないんなら仕方ないわけだけど、はっきり言って ちゃんと理解して使ってないと、落とし穴が多いので注意が要るよ。
25 名前:デフォルトの名無しさん mailto:sage [04/07/06 00:52] 未熟者から、ちょっとつまらない質問です。 DBからSELECTで持ってきたデータをDataGridに表示させるとき、コネクションや データアダプタやデータセットを、サーバーエクスプローラからマウスでドラッグして 貼りつけたうえDataGridのソースをプロパティで設定するやり方と、それらをすべて コードで表記するやり方がありますよね。 何というか、やり方としてどっちが「まとも」なんでしょうか。 体感的には貼りつけるやり方のほうが処理が早いような気がするんですけど、 ただ「上のほうに」(こんな表現しかできないレベルの素人です)、OleDb関係の異常な長さの コードが自動生成されていて、何だか薄気味悪いです(貼り付けなしで、すべてをコードで 記述しても、これの10分の1ぐらいで済みそう)
26 名前:デフォルトの名無しさん mailto:sage [04/07/06 06:38] >>25 どっちが「まとも」かはわからんが、個人的にはコードを書く方がお好み 以前はADO.netに慣れていなかったので貼り付けでやってたけど、 今はDBアクセス処理のクラスを作成してそれで処理するようになった。 適材適所で使い分けるのが吉じゃねえの
27 名前:デフォルトの名無しさん mailto:sage [04/07/06 13:27] .NET Framework を自分が作成したプログラムと一緒に強制インストール する事なんて、可能でしょうか? インストーラ付きで配布されてるから、無理なのかな、、、 もし出来るならその辺解説してるHPとかあれば教えてください。
28 名前:デフォルトの名無しさん mailto:sage [04/07/06 13:30] >>27 ダウンロードの詳細 : Visual Studio .NET 2003 Bootstrapper www.microsoft.com/downloads/details.aspx?FamilyID=627921a0-d9e7-43d6-a293-72f9c370bd19&displaylang=ja
29 名前:デフォルトの名無しさん mailto:sage [04/07/06 15:00] >28 ありがとうございました。うまくいきました。 やっぱりちゃんと用意されてるんですね、、、
30 名前:デフォルトの名無しさん mailto:sage [04/07/06 15:51] ものっすごい初心者で恐縮なのですが、教えてください。 VB.NETの画面でVC.NETで作成した関数を利用したいのです。 VCの関数はDLL化してあり、Declare宣言もしております。 それを呼び出したところ以下のようなエラーが出てしまいます。 「DLL XXXCOM.dll の CMMsgBox というエントリ ポイントが見つかりません。」 ・XXXCOM.dll = DLL名 ・CMMsgBox = 呼び出したい関数名 マシン容量の都合上、MSDNをインストールできなかった為、 ヘルプが使えません。 どうぞよろしくお願いします。
31 名前:デフォルトの名無しさん mailto:sage [04/07/06 18:13] MSDNはオンラインでも読めるよ
32 名前:30 mailto:sage [04/07/06 19:14] >>31 すいません。 それは知っています。 最初はそれで調べていたのですが、 現在、長い時間繋ぐには不都合な環境でして。 隙を見て書き込んだ次第です。
33 名前:デフォルトの名無しさん mailto:sage [04/07/06 19:35] 元の関数定義とDeclareの内容くらい書かないと無理では?
34 名前:デフォルトの名無しさん mailto:sage [04/07/06 22:40] ActiveXのDLLだったら(ほぼ)そのままVB.NETで使えるんだが
35 名前:デフォルトの名無しさん mailto:sage [04/07/07 00:08] >>26 質問というより迷いを除くための相談みたいで、すみませんでした。 貼り付け型のほうが処理が速いといっても、明らかに違いが分かるほどのものでもないし いろいろ比較すると、コード表記のほうが無駄が少ないんじゃないかな、と、ひとまずの結論。 何より貼りつけ型は、元データのカラムがテッキトーに並べ替えられちゃって、直すのがめんど。 (もしかしたらどこかに何か設定の仕方があるのかもしれないけど、もうどうでもいいや。 わけの分からないコード自動生成されて、あちこちに制御分散させるより、自分の書いたもの だけで全責任負っちゃったほうが楽だ、という気がしてきました)
36 名前:デフォルトの名無しさん mailto:sage [04/07/07 00:18] >貼り付け型のほうが処理が速い そうなのか?
37 名前:デフォルトの名無しさん mailto:sage [04/07/07 01:00] >>36 確かなところは分かりません。 2万件程度のテーブルからLike条件抽出を何度かやってみただけですんで。 貼りつけた方はザザッと出てきたけど、コード書きのほうは何となくパラパラっと。 本当に何となくで、測定したわけではありません。 と、ついでに勢いにまかせて、というか図に乗って、もういっこ質問。 dbへの接続やレコードセットオープンの書き方は、ネット上のいくつかのサイとを 参考にしながらやってみたんですけど、dbもレコードセットも、オープンして処理が 終わったあと、=nothing は、書かなくていいんでしょうか(どのサイトも言及なし) Accessの時にやってた形、set 〜 = nothing って書くと、set が消されちゃうん ですね。で、仕方なく、単に 〜 = nothing にすると、別にバグ扱いもされず、 実際の処理も問題なく終わるんですが。 書いた方がいいのか、書かなくてもいいのか、書かない方がいいのか、そのへんが さっぱり分かりません。 書かないとメモリとったまま手放さないとか、そういう話ありませんでしたっけ。
38 名前:デフォルトの名無しさん mailto:sage [04/07/07 01:33] おい、ちゃんとClose(かDispose)はしてるか? 何となく意識はしてないけど知らないうちに消されてるような 書き方になってる気はするが…
39 名前:デフォルトの名無しさん mailto:sage [04/07/07 01:53] ええ、close は毎度ちゃんとやってます。 nothing に関しては、もともとが雑におぼえてしまったせいか、Access 使ってたときも書かずに済ませてしまったことがあったりしまして。 いつだったかweb上のどこかのサイトで、closeするだけじゃなくちゃんと nothing書いておかないとメモリ無駄食いするぞ、みたいな文章読んだので、 ちょっと心配になって最近ようやく気をつけるようになったんです。
40 名前:デフォルトの名無しさん mailto:sage [04/07/07 02:10] 通常は関数内で宣言したものだったら、関数抜けた瞬間に開放されることになってるが 開放のタイミングはいつ起こるかわからない仕様だったと思います 仮にDisposeしても、どこかの外部変数が参照している間は残ったりするってのを読んだ記憶があります .NETからSETというのは無くなってますね 扱える変数全部が旧VBでいうオブジェクト形なのでそういうことなんだと思います 貼り付けたほうってSELECT文を動的に発行するものでしょうか? それとも事前にウィザードで発行された自動SQLでしょうか? 後者であればDB上にSQLが事前コンパイル(事前読み込み)されて 最適な結果が用意されてるかもしれません DB環境がわからないのでかなり適当な事いってます(w
41 名前:39 mailto:sage [04/07/07 02:55] >>扱える変数全部が旧VBでいうオブジェクト形 む、ムズい・・・です いま知ったんですけど。 〜 = nothing の、"nothing"のところにマウスの矢印あてると "oject" って 浮き出てきますね。 つまり、宣言されたものはここで何もなかったことにするぞ、つまり解放の証 と考えていいのかな。だったら書いといたほうがいいですね。 貼り付け型コード表記型ともに、SQL文は、フォーム上のテキストボックスをLike抽出条件に べた書き、つまり条件は同じです 以下、想像ですけど 貼り付け型のほうは、接続先なんかはもう決定しているわけですから OleDbConnection1.Open() この一行で接続は確立できますよね。 データアダプタやデータセットについても貼りつけた時点で決定済み、あらためて宣言する必要はない。 いっぽうオールコード表記型のほうは Dim MyDB As New OleDbConnection Dim MyCmd As New OleDbCommand Dim MyDataSet As DataSet = New DataSet Dim MyDataAdp As New OleDbDataAdapter MyDB.ConnectionString = "Provider=・・・" MyCmd.Connection = MyDB これだけのことを決めてやって、ようやく MyDB.Open() が出来る。 これが速度の差になってるのかな、なんてことを、あまり出来の良くないオツムで考えたり してみました
42 名前:デフォルトの名無しさん mailto:sage [04/07/07 03:21] … GCとFinalizeとDispose辺りをキーワードにして ドキュメントをよく読んでみることをおすすめする。
43 名前:30 mailto:sage [04/07/07 09:57] お騒がせしました。 上司が解決してしまいました。 ありがとうございました。
44 名前:デフォルトの名無しさん mailto:sage [04/07/07 10:00] >>43 どう解決したのかも書けよ。
45 名前:デフォルトの名無しさん [04/07/07 13:21] 初歩的なことで恐縮ですが、お尋ねします。 テキストボックスの内容を変数で指定したいのですが、 このように書くと100行以上書かなければなりません。 右側のTextBox1,2,3...の数字の部分を変数を使って指定するには どうすればよいのでしょうか? Dim tesText(100) As System.Windows.Forms.TextBox tesText(1) = TextBox1 tesText(2) = TextBox2 tesText(3) = TextBox3 ... tesText(100) = TextBox100
46 名前:45 mailto:sage [04/07/07 15:07] 自己レスです >>2 の DOBON.NETのページを見たら、 「フォームに配置されているコントロールを名前で探す」 ってのがあったので、これが使えるかもしれません。 調べてみます。 お騒がせしました。
47 名前:22 [04/07/07 15:45] 誰か >>22 わかる人いませんか? >>45 こんな感じでどうだろう? フォームに直接テキストボックスを貼り付けているのであれば ↓こういう関数をつくり、コントロールにあるID(?)を取得 Private Function fintTxtForm_TextPos(ByVal strName As String) As Integer Dim intCnt As Integer For intCnt = 0 To Me.Controls.Count - 1 If Me.Controls(intCnt).Name = strName Then Return intCnt End If Next intCnt End Function んで、こう使えば少なくてすむ。 Dim intCnt As Integer Dim intPos As Integer Dim tesText(100) As TextBox For intCnt = 1 To 100 ’"TextBox" & intCnt という名前で検索 intPos = fintTxtForm_TextPos("TextBox" & intCnt) ’指定 tesText(intCnt) = Me.Controls(intPos) Next パネルならMeをPanel1に変えれば良い。如何?
48 名前:22 mailto:sage [04/07/07 15:45] あちゃ。 コード書いている間に解決しちゃったか
49 名前:デフォルトの名無しさん [04/07/07 15:58] 盛り上がってまいりました
50 名前:デフォルトの名無しさん mailto:sage [04/07/07 23:39] webアプリケーションの作成ではMessageboxは使えないのでしょうか? 宣言されてない!と出てしまいます…
51 名前:デフォルトの名無しさん mailto:sage [04/07/07 23:54] VBScriptかJavaScriptで代用しては?
52 名前:デフォルトの名無しさん mailto:sage [04/07/08 00:45] どう考えたら使えると思えるんだ?
53 名前:デフォルトの名無しさん mailto:sage [04/07/08 03:36] いまさらな質問ですいません ビルド番号をビルドするたびに自動変更させるにはどうしたら良いですか
54 名前:デフォルトの名無しさん mailto:sage [04/07/08 12:43] >>AssemblyInfo
55 名前:デフォルトの名無しさん mailto:sage [04/07/08 13:32] >>54 Thx
56 名前:デフォルトの名無しさん [04/07/08 16:43] VC#と比べて、VB.NETの優れた点はどういう所ですかね?
57 名前:デフォルトの名無しさん mailto:sage [04/07/08 16:47] 基本的に言語の違いしかない。
58 名前:デフォルトの名無しさん [04/07/08 16:53] では、人にもよると思いますけど、プログラム組むのに言語使用的にどちらの方が使いやすいとかはありますかね?
59 名前:デフォルトの名無しさん [04/07/08 17:43] Windows Serverで立ち上げていたftpサイトに \ . %d .aux0 4.21 \ . %d .nul 3.94 \. %d .lpt1 1.99 \ ;[[Scan By ... みたいなフォルダを何千個も作られちゃいました。 ちゃんと書き込み制限をかけましょう、という話は当然として、既に作られてしまったこのフォルダ群を削除したいと考えています。 ただ、エクスプローラ上からでは不正なLongFileNameの[ . %d .nul 3.94 ]という名前のフォルダにアクセスできず、リネームも削除もできません。 一応、コマンドプロンプトのdir /xでShortFileNameを調べてそのフォルダごとに削除することは可能ですが、数が数なので、手作業で消して回るのは無理があります。 そこで、VB.netでフォルダを削除するツールを作りたいと考えています。 FSOを使って、 FS = FSO.GetFolder(sScanPath) For Each F In FS.SubFolders Console.Write(F.Path) Next って、やりたいのですが、不正な名前のフォルダはリストアップされてくれず、目的を達しません。 また、VBのDirコマンドでコマンドプロンプトの"/x"オプションの付け方がわかりません。 そこで、 1.FSOで不正なLongFileNameを持つフォルダオブジェクトのShortFileNameを列挙するやり方 2.VB.netのDirコマンドでShortFileNameをとるやり方 3.1.2以外で上記の目的を達するやり方 のいずれかをどなたかご指摘頂けないでしょうか?
60 名前:デフォルトの名無しさん mailto:sage [04/07/08 17:54] 消しちゃいけないファイルを別フォルダに移して FTPのフォルダごと削除してしまえば?
61 名前:59 [04/07/08 17:59] エクスプローラ上から指示を出すと削除しようとしている最中に、 [xxx フォルダを削除できません。指定されたファイルが見つかりません。] [パスとファイル名を確認してください。] と表示されて操作が失敗します(;。;)
62 名前:デフォルトの名無しさん mailto:sage [04/07/08 18:16] >56 VS.NETを使っている場合、コンパイルしなくてもその場でにコーディングミスが表示される。 他はともかく、この点は優れていると思う。
63 名前:デフォルトの名無しさん mailto:sage [04/07/08 18:21] エクスプローラで必要なファイルを移動させて RMDIR /Sでディレクトリごとアボーン
64 名前:デフォルトの名無しさん mailto:sage [04/07/08 19:38] >>62 デフォルトでOption Strict Onなら褒めてあげたいところだけどね。
65 名前:デフォルトの名無しさん mailto:sage [04/07/08 21:07] 既出だったらスマソです 配布パッケージ(ディストリビューション?)を作成する方法がよくわからないんですが 情報へのリンクでも結構ですのでどなたかお助けください
66 名前:59 [04/07/08 21:36] >>63 ありがとうございました。あっさり消えてくれました^^; 手間もかからずお手軽でまさに完璧です、助かりました (よく考えると>>60 も同じ事を言ってる気がします。ありがとうございました)
67 名前:デフォルトの名無しさん mailto:sage [04/07/09 02:09] >>56 画面周りは、VB.netのほうが作りやすいと個人的には思う。
68 名前:60=63 mailto:sage [04/07/09 02:32] >>66 お疲れサマでした<m(__)m>
69 名前:デフォルトの名無しさん [04/07/09 11:33] VB.net 2003でカスタムコントロール作成にチャレンジ中です。 タブコントロールをメインとしたコンテナコントロールを作成しようと思っていますが… タブコントロールを基に作成したユーザーコントロールを任意のフォームに配置し そのコントロール(コンテナ)上にテキストボックスなどを配置しようと考えたのですが VB6時代とは勝手が違いなかなかうまくいきません。 (イメージとしては独自のタブコントロール、もしくはオプショングループのようなコンテナコントロールに テキストボックスなどをドラッグして配置したい) IContainerインタフェースについての理解が浅いためうまく説明できないのですが VB.netで独自のコンテナコントロールを作成する場合、後々そのコンテナ上に配置するコントロールの 追加動作はコード上でaddしていかないといけないものなのでしょうか?
70 名前:デフォルトの名無しさん mailto:sage [04/07/09 12:02] >>65 すごく簡単に書くと、 1.新規作成で「セットアップ/デプロイメントプロジェクト」を選んで ソリューションに追加する。 2.構成マネージャで、全てのプロジェクトをRelease、ビルドにチェックを入れる。 3.ソリューションのビルド 細かい設定はいっぱい端折ってるけど、これで逝けるんじゃないかな。
71 名前:デフォルトの名無しさん [04/07/09 17:37] d:testに、mdbファイルを作りたいのですが、 ファイル'd:\test'を開く事が出来ませんでした。 ほかのユーザーが排他的に開いているか、データを読み取る権限がありません というエラーが出てしまいます。 File.SetAttributes("d:\test",FileAttributes.Normal) とか、 Dim di As New System.IO.DirectoryInfo("D:\test") di.Attributes = FileAttributes.Normal とかやってみたのですが、同じエラーが出てしまいました。 これは読み取り専用属性が邪魔をしてるわけではないという事でしょうか? でもこのPC使ってるのは自分だけなので、他の人が開いてるなんて無いだろうし・・・ 解決方法ご存知の方ご教授いただけませんか?
72 名前:デフォルトの名無しさん mailto:sage [04/07/09 21:22] >>70 なるほどこうなってんですねえ とりあえずセットアップがビルドされるとこまで確認できました でもセットアップを実行してみたら正常に終了するものの どこにもインストーされた形跡が無い?どこへ消えたんだ? 私がなにか間違えてますねたぶん(笑) とっかかかりがわかったのであとは何とかなると思います ありがと〜
73 名前:デフォルトの名無しさん [04/07/10 03:14] もう、聞き飽きた質問かもしれないのですが、分からないので教えてください。 現在、カシオペア(WinCE 3.0)用のアプリを作成中なのですが、 シリアルポートを使っての通信の方法が分かりません。 色々見てはいるのですが、「通常のモデムと一緒」と言われているだけで 実際にどんな方法で接続したら良いのか教えて下さい。 よろしくお願いします。
74 名前:デフォルトの名無しさん [04/07/10 08:47] サービスから、ログインしているユーザー名を知りたいのですが 教えて頂けないでしょうか。 System.Environment.UserName ですと'system'が返されるので解かりません。 よろしくお願いします。
75 名前:デフォルトの名無しさん mailto:sage [04/07/10 09:25] サービスって何だ? ログインてどういう方法をとってるんだ? 認証方法は何を使ってるんだ? まっとうな方法をとってるんならHttpContext.Current.Userとかだろうが…
76 名前:デフォルトの名無しさん mailto:sage [04/07/10 09:38] >>74 ログインしてるユーザーって、一人とは限らないよね?
77 名前:74 [04/07/10 11:26] すみません。言葉が足りなくって サービスとはWindowsのローカルサービスの事で WindowsXpですと コントロールパネル - 管理ツール - サービス に登録するものです。 ユーザーはサービスを実行しているマシンに直接ログインしている ローカルユーザを知りたいのです。したがって一人です。 お願いいたします。
78 名前:デフォルトの名無しさん mailto:sage [04/07/10 21:16] >したがって一人です。 おい複数がログインしてるときはどうなるんだ?
79 名前:デフォルトの名無しさん [04/07/11 00:05] >>78 ネットワーク経由ではなく直接マシンを使用しているユーザーです。
80 名前:デフォルトの名無しさん mailto:sage [04/07/11 00:30] WinXPだとローカルでも複数ログインできなかったっけ?
81 名前:デフォルトの名無しさん mailto:sage [04/07/11 02:32] Web関係の命令でPOSTした情報を取得したいのですが リファラーの設定ができず別ページの情報が飛んできてしまいます リファラーを付加してPOSTする方法ってありますか?
82 名前:デフォルトの名無しさん mailto:sage [04/07/11 04:18] プログラム起動時、変数を宣言しているとVBは必ず0が入るじゃないですか。 それをChar型の値の中のランダムな数値を入れたいのですが、どうすればいいでしょうか?
83 名前:名無しさん@そうだ選挙に行こう [04/07/11 13:44] >>80 同時にはできないだろ
84 名前:名無しさん@そうだ選挙に行こう mailto:sage [04/07/11 13:47] ログインしっぱなしみたいな状況だけどWindowsとしてどういう処理をしてるかはわからないね ただ裏でプロセスが動きっぱなしみたいな感じなのかな?
85 名前:名無しさん@そうだ選挙に行こう mailto:sage [04/07/11 19:38] そりゃまあ、アクティブ?になってるユーザは一人としてもさ
86 名前:デフォルトの名無しさん mailto:sage [04/07/11 23:10] アプリケーションのアイコンはどこで変更するのでしょうか? タイトルバーのアイコンは変更できるのですが、exeファイルのアイコンを変えられません。
87 名前:デフォルトの名無しさん mailto:sage [04/07/12 02:03] プロジェクトのプロパティにある"ビルド"に設定がある。
88 名前:デフォルトの名無しさん mailto:age [04/07/12 20:07] xlApp = CType(CreateObject("Excel.Application"), Excel.Application) xlBook = CType(xlApp.Workbooks.Add, Excel.Workbook) xlSheet = CType(xlBook.ActiveSheet, Excel.Worksheet) これだと新しくエクセルが起動してしまいます。 今開いているエクセルシートに書き込むにはどのようにしたらいいのでしょう? VB6では Set xlApp = Excel.Application Set xlBook = xlApp.ThisWorkbook Set xlSheet = xlBook.ActiveSheet で行けたのですが。
89 名前:デフォルトの名無しさん [04/07/12 21:52] すごく初歩的なことなのですが、質問させてください。 ListBox または Combobox でmdbのデータを表示させたいのですが、 今現在やった作業は、 サーバーエクスプローラーのデータの接続で、mdbに接続。 表示させたいテーブルをFormにD&Dして、OleDbConnection1とOleDbDataAdapter1 を作成。 「データ(A)」メニューの「データセットの生成」で、テーブルのデータセットを生成。 ListBoxまたはComboboxのプロパティ「DataSource」「DisplayMember」「SelectedItem」を選択項目から選択。 開始。 とやっても、リストとコンボには、何も表示されません。 DataGridの場合も同様で、プロパティだけ設定しただけでは、 何も表示されなかったのですが、FormのLoadイベント内に Dim dst As New DataSet Me.OleDbDataAdapter1.Fill(dst) Me.DataGrid1.DataSource = dst としてやったところ、データが表示されました。 ListBoxまたはComboboxも同様の処理が必要なのでしょうか? すみませんどなたかご教授ください。
90 名前:デフォルトの名無しさん mailto:sage [04/07/12 22:01] >88 System.Runtime.InteropServices.Marshal.GetActiveObject >89 最終的にデータを読み込ませるのはコーディングで指示する。 ちなみに、ヘルプのサンプルに書いてあると思うが。
91 名前:デフォルトの名無しさん [04/07/12 22:29] 便乗質問ですが、>>88 のCTypeって必要ないような気がするんですが。 ていうか、エクセルのApplicationオブジェクトにThisworkbookなんて プロパティありましたっけ? もしあるのなら、.NETからだろうとなんだろうと同じようにそれを 使えばいいだけのような気がしますが。
92 名前:86 mailto:sage [04/07/12 23:10] >>87 ありがとうございましたー! 本当に助かりました。・゚・(ノД`)・゚・。 アリガトウ
93 名前:デフォルトの名無しさん [04/07/12 23:11] ファイルを保存するのはどうすればいいのですか?
94 名前:デフォルトの名無しさん [04/07/12 23:26] VC++.NETで作成したDLL(MFC)をVB.NETで使おうとしてるのですが デバッグモードでDLLのソースにステップインできません。 ブレークポイントをしかけて実行しても止まらずにDLLの処理が実行されます。 DLLの処理は正常に動作していて問題ありません。 特に設定は弄っていません。 何か足りないことがあるのでしょうか?
95 名前:デフォルトの名無しさん [04/07/12 23:30] >>93 ファイル(F)→〜の保存
96 名前:デフォルトの名無しさん mailto:sage [04/07/12 23:33] アセンブラ混合モードかな? (VCだとそうなんだが)
97 名前:デフォルトの名無しさん mailto:sage [04/07/12 23:40] .NETではなくて、6.0なんですけど、 エディタの、キーワードの色をそれぞれに指定して、 変更することってできませんか? endif や public などを色分けしたいんです。
98 名前:デフォルトの名無しさん [04/07/13 00:00] >>97 できんでしょ。すくなくともVSのIDEのエディタでは。 正直、そういうクダラナイことに関心がいくのは心理的な逃避だとしか 思えない。 そんなことが生産性に寄与するように見えるとしたら、 それはヘッポコだからだと思う。
99 名前:97 mailto:sage [04/07/13 00:11] 今までCとC++しかやったことなかったんで、 エディタやIDEがたくさんあって恵まれていたのかもしれません。 VBは確かにVC++やその他IDEに比べると すこぶる操作性が悪く生産性と技能スキルが鈍りますが、 修行だと思ってVBをマスターしようかと思います。
100 名前:デフォルトの名無しさん mailto:sage [04/07/13 00:11] >>98 おお、すげ〜発想の飛躍だな。
101 名前:デフォルトの名無しさん [04/07/13 00:53] >>97 C++やってるんだったら6.0じゃなく.NETやったほうがいいと思う 6.0ってサポート切れてるし 6.0と.NETは似て非なるもの
102 名前:デフォルトの名無しさん mailto:sage [04/07/13 01:01] >>91 xlAppとかの型しだいでは>キャストの必要性 >>94 DLLがデバッグ用にビルドされてないとか。 で、問題なく動いてるんならDLLの中をデバッグできる必要はないと思うが… 困ってるわけじゃなく、どうして?ってこと?
103 名前:94 [04/07/13 06:04] >>102 VC++.NETの実行ファイルからこのDLLを動かすと ちゃんとデバッグできるのでデバッグ用にビルドされていない訳では ないと思います。 今は困ってないのですが、これから開発を進めていく上で デバックでDLLの中を追えないのは困りますよね。 VB.NETのEXEからVC.NETのDLLを呼ぶなんて特に 変わったことをやってる訳でもないのですぐに解決できると 思っていたのですが・・・かなりハマってます。
104 名前:102 mailto:sage [04/07/13 09:32] いくつか気づいた点を書いてみる。 *VBのプロジェクトのプロパティ-構成プロパティ-デバッグにある 有効にするデバッグ アンマネージコードデバッグ にチェックが入っているか。 (DLLがマネージなコードだったら関係ないはず) *デバッグ対象のソースが認識されてないのならソリューションのプロパティで デバッグソースファイルにDLLのソースのパスを追加してみる。 *同じく、デバッグシンボルファイルについても。 *デバッグ時、出力に出てくるメッセージで該当DLLのシンボルが読み込まれているか?
105 名前:94 [04/07/14 22:37] >>104 回答ありがとうございます。 DLLはマネージなコードです。 デバッグデータソースファイル、デバッグシンボルファイル のパスに追加しても駄目でした。 デバッグ時の出力には該当のDLLについて何も出力されませんでした。 (何も出ないってことはデバッグ情報が取れてない?) 実行環境は実行ファイルを作成してるVB.NETのプロジェクトの デバッグフォルダにVC++.NETで作成したデバッグモードのDLL(MFC) を放り込んで動かしてます。 DLLのプロジェクトから実行ファイルを指定して動かしても駄目でした。 今回、旧システム(VC5.0)をVB.NETで作り変えることをしています。 旧システムの財産を再利用するためにDLLをVC++.NETで再コンパイルして 利用しようとしています。 なんせ素人集団なので壁にぶつかりまくってます^^;
106 名前:デフォルトの名無しさん mailto:sage [04/07/14 23:18] >VC++.NETで作成したデバッグモードのDLL(MFC) これマネージなコードってほんとなのか?
107 名前:デフォルトの名無しさん mailto:sage [04/07/15 02:48] >>今回、旧システム(VC5.0)をVB.NETで作り変えることをしています。 >>旧システムの財産を再利用するためにDLLをVC++.NETで再コンパイルして こういうのはアンマネージドじゃないの?
108 名前:デフォルトの名無しさん mailto:sage [04/07/15 19:29] OpenFileDialogを使ってCSVのみを開こうとさせたのですが ダイアログ自体は開きましたがCSVファイルを開くために ダブルクリックしても何も開かず、ダイアログも閉じてしまいます。 そこでデバックポイントを張って原因を調べようとしたところ デバックの部分で死んでしまいました。 OpenFileDialog.Filter = "csvファイル(*.csv)|;*.csv|全てのファイル(*.*)|*.*" OpenFileDialog.FileName = "" OpenFileDialog.InitialDirectory = WorkDir.Text OpenFileDialog.Title = "ファイルを開く" OpenFileDialog.RestoreDirectory = True OpenFileDialog.ShowDialog() これでは不味いのでしょうか?
109 名前:108 mailto:sage [04/07/15 19:30] デバックポイントを張った場所は OpenFileDialog.ShowDialog() の直後です。
110 名前:デフォルトの名無しさん mailto:sage [04/07/15 19:56] デバッグの部分で死んだってのは良く分からないんだが… ひょっとして勝手に、選んだCSVファイルを開いて よきに処理してくれるとでも思ってるのか?
111 名前:108 mailto:sage [04/07/15 20:02] >>110 もしかしてエクセルを開く為の処理を行わないといけないのでしょうか?
112 名前:デフォルトの名無しさん mailto:sage [04/07/15 20:59] 勝手に関連付けとかで開かれたりしたらびっくりするだろ。
113 名前:108 mailto:sage [04/07/15 21:18] >>112 右クリックから「開く」やエディタなどを指定して 開くと開けたので、ダブルクリックやダイアログの開くボタンを クリックでも開くと思ったのですが・・・。 ShowDialog()の後にCreateObjectを使って エクセルを呼び出せばいいということですね?
114 名前:デフォルトの名無しさん mailto:sage [04/07/15 21:30] … まあいいいや。 単純にプロセスで開けばいいんじゃね? その後にExcelの操作したいんだったら別だけど。
115 名前:デフォルトの名無しさん mailto:sage [04/07/15 21:32] >>113 メニューには開くだけじゃなくて選択とかがないか? つうか、勝手に開かれたら使いもんにならないだろうに。
116 名前:デフォルトの名無しさん mailto:sage [04/07/15 22:11] 夏だから?Spoke効果?
117 名前:94 [04/07/15 22:54] >>106 107 ごめんなさい。しったかしてました。 .NETで作ったものは全部マネージドコードだと思っていました。 >*VBのプロジェクトのプロパティ-構成プロパティ-デバッグにある > 有効にするデバッグ アンマネージコードデバッグ これでうまくいきました。 お騒がせしてすみません。 ありがとうございました。
118 名前:デフォルトの名無しさん [04/07/15 23:56] 教えてください ウインドウが2つ(ウインドウA、ウインドウB)あります。 ウインドウAで入力エラーが発生した際にウインドウBを呼び出します。 このときウインドウBが前に来ている状態です。 そしてウインドウBを閉じたときに(右上の×をクリック)、 ウインドウAのエラーが発生した箇所(テキストボックス)に フォーカスが当たっている状態にしたいのですが、 そんな方法はあるのでしょうか?
119 名前:すぺる間違っていたらゴメソ [04/07/16 00:04] ウインドウBをShowDialogで開き、戻ってきたときに フォーカスを移動すればよいのでは。
120 名前:デフォルトの名無しさん [04/07/16 02:52] ストアドプロシージャにステップインを選んでストアドのデバッグを行いたいのですが ブレークせずに素通りしてしまいます クエリアナライザではブレークできているのですがどこが悪いのでしょうか?
121 名前:デフォルトの名無しさん mailto:sage [04/07/16 04:21] *VBのプロジェクトのプロパティ-構成プロパティ-デバッグにある 有効にするデバッグ SQL Sever デバッグ にチェックが入っているか。 とか。
122 名前:120 mailto:sage [04/07/16 04:34] >>121 チェックボックスはONにしてあります ヘルプに記述してあるDLL等はすべて所定の位置にインストールしてあり インストールCDからデバッグコンポーネントのインストールもしてあります 出力ウインドウには スレッド 'マシン名(53)' (0x800005f0) はコード 0 (0x0) で終了しました。 プログラム 'SQL デバッガ: T-SQL' はコード 0 (0x0) で終了しました。 と出力されるだけで、ストアドの結果は出力されませんでした
123 名前:デフォルトの名無しさん mailto:sage [04/07/16 16:58] VBのブラウザコントロールで、<input type="file">の値を操作したいのですが、スクリプトでは操作できない等の情報ばかりです。 何かいい方法はないでしょうか?よろしくおねがいします。
124 名前:デフォルトの名無しさん mailto:sage [04/07/16 17:25] ブラウザコントロールってIEコンポーネントの? System.WebやSystem.Netは?
125 名前:123 mailto:sage [04/07/16 18:16] >>124 返信ありがとうございます。 VS the spokeを購入したばかりでよくわからないのですが、現在はIEコンポーネントというものを使用しているのだと思います。 System.Web、System.Netについて調べてみます。 図々しくて申し訳ありませんが、どうしてもわからないことがあったら またよろしくお願いします。
126 名前:デフォルトの名無しさん [04/07/16 18:22] CPU温度ってどうやって測るんですか? コードがわかりません 何かコンポーネント必要ですか?
127 名前:デフォルトの名無しさん mailto:sage [04/07/16 18:29] 温度計が必要です。
128 名前:デフォルトの名無しさん mailto:sage [04/07/16 21:34] >>123 >>125 COM相互運用でやることになります。 参照の追加で、MSHTML.DLL (IDL) とかを追加して、 GetDocument で取ってきたものを as IHTMLDocument3 で IHTMLDocument3 にして、 getElementByID とかで input 等を取ってきて(IDが無ければdocumentElement以下をのエレメント階層を トラバースして探すこと)、input 要素の IHTMLElement を as IHTMLInputFileElement で IHTMLInputFileElement にして、 ->put_value() でファイル名を設定できるはず。 その後 submit 要素を探して、->click() で送信。 C++ (MFC) でのサンプルなら、 www.experts-exchange.com/Programming/Programming_Languages/MFC/Q_21043473.html にある。 参照の追加で COM タイプを取り込むこと、as I**** で所望のインタフェイスが得られること、 が理解できれば、C# でも別段難しい点はないと思う。
129 名前:デフォルトの名無しさん [04/07/16 22:15] 教えてください>< ORACLE9i の外部プロシージャ(DLL)をVB.netで作りたいです。 今まで何も考えず、Windowsアプリケーションしか作ったことがなかったので、 DLLなんてさっぱりわかりません。。。 CのDLL(アンマネージド)ではWindowsが読めるヘッダが付いていて、 VBのDLLではフレームワーク用のが付いているんですよね? 今回サーバー機がWin2000でフレームワーク入ってるんで、 PL/SQLからキックするさえが出来れば・・・と思ってるんですが。。。 ORACLEのマニュアルではCとJAVA用のコードしか無く、 しかも、Cだと、ライブラリ名・外部公開名のみに対して、 VBはライブラリ名・クラス名・実行メソッド名を指定しないといけない(と思うので) ですよね。 C++のDLLでラップするというのも考えたんですが、(それも質問中です(;つД`) ) VBだけで出来れば一番いいです。 何もわかってなくて申し訳ないですが、何か分かる人教えてください。
130 名前:128 mailto:sage [04/07/16 23:26] >>128 >が理解できれば、C# でも別段難しい点はないと思う。 VB.NET スレだった・・・死んできまつ(嘘)
131 名前:123 mailto:sage [04/07/17 02:03] >>128 ありがとうございます。 わからない用語調べながら試行錯誤してみたんですがどうもうまくいきません。 笑われてしまうかもしれませんが作成したコードかきます。 ヒントをください。 HTML側 <form> <input type="file" name="files" id="ID"><br> <input type="submit"> </form> Dim Data1 As mshtml.IHTMLDocument3 Dim Data2 As mshtml.IHTMLElement Dim Data3 As mshtml.IHTMLInputFileElement Data1 = AxWebBrowser1.Document Data2 = Data1.getElementById("ID") Data3 = ???? Data3.value = "C:\aaa\aaa"
132 名前:デフォルトの名無しさん [04/07/17 11:58] インターネットのプロパティ、接続タブの画面で、設定ずみの ダイヤルアップ設定を選択、通常の接続でダイヤルするを既定に 設定してあるのですが、ブラウザやメーラーでインターネットへの アクセスを開始すると自動的にダイヤルアップが開始され、繋がり ますが、VB.NETで作ったツールでSystem.Web.Mail.SmtpMail.Send やらSystem.Net.Sockets.TcpClientやらを実行したときには インターネットに繋がっていなければ、同じように自動的に ダイヤルアップが行われるというものでは無いのでしょうか・・・ VB.NET ダイヤルアップでググっても、ズバリこれ!というサンプルも 見つけられず・・・ ADSL常時接続やらルータによる接続が当たり前な昨今、ダイヤルアップ なんてことをすることも少ないのかもしれませんが・・・
133 名前:デフォルトの名無しさん mailto:sage [04/07/17 19:52] VB.NETスレの皆様、ちょっと聞いて下さい。 少し前まで、このスレでお世話になりながらVB.NETプログラミングに精進していたのですが、 今回、Webアプリケーションに初TRYしてみることにしました。言語はVB.NETです。 そこで、以下の現象が。 Visual Studio.NET2003で、ASP.NETアプリケーションを新規作成し、 フォームにいろいろ配置して「デバッグ」! すると、「デバッグができません」という旨のエラーが出てしまいます。 「デバッグなしで実行」すると正常に実行できます。 環境: LANを利用して開発してます。 ・サーバーPC OS:Windows Server 2003 ファミリ IIS:あり Visual Studio.NET 2003:なし ・クライアントPC OS:Windows XP Home Edition IIS:なし Visual Studio.NET 2003:あり サーバーPCにIISが入っていて、クライアントPCにVisual Studio.NET 2003が 入っている状態です。 サーバーPCにつないで、ASP.NETアプリケーションを作っているのだけれど、 この場合、サーバーPCにもVisual Studio.NET2003が入っていないとデバッグ できないのでしょうか? サーバーPC1台で開発する形? つたない日本語で申し訳ないのですが、どうかヒントを下さらないでしょうか;
134 名前:120 [04/07/18 01:19] VSを再インスコしたらデバッグできるようになりました お騒がせしました<m(__)m>
135 名前:デフォルトの名無しさん [04/07/18 13:22] VisualBasic.net 2002 pro をインストールしたんですけど、 ソリューションの作成、Windowsアプリなどを新規に作成しようとした場合に 「"C:\Document〜1\ \LOCALS〜1\TEMP\RAD214DC.tmp"が見つかりません」とおこられて Windowsアプリなど作成ができません。 すでに作ったソリューションなどを読み込んだ場合は普通に編集、デバッグはできます。 3回インストールしなおしましたのでインストールの失敗とは考えにくいです。 インストール時には常駐ソフトは終了させました。 MSに問い合わせましたが症状がわからないなどを理由に回答を得られませんでした。 どなたか同じ症状でお困りの方はいらっしゃいませんか?
136 名前:デフォルトの名無しさん [04/07/18 13:37] >VisualBasic.net 2002 pro こんな製品存在したっけ。。?
137 名前:デフォルトの名無しさん mailto:sage [04/07/18 13:57] >>135 Windowsのバージョンは?
138 名前:デフォルトの名無しさん [04/07/18 17:45] WindowsXP Professional SP1です。 とくにレジストリをいじっているわけでもなく、WindowsUpdateはすべて完了しております。
139 名前:デフォルトの名無しさん mailto:sage [04/07/18 18:13] >>138 OSから再インストロールぐらいしか思いつかん。
140 名前:デフォルトの名無しさん [04/07/18 18:18] ていうかやっぱり、 >VisualBasic.net 2002 pro こんなこと書いてる時点で、ある「疑惑」が払拭できないんだが。。 この疑惑が正しいとしたら、>>135 はいい度胸してるよな。 というより、こういうことする人がMSの一質問ウン万円って技術サポート料金 を本当に払うとは....
141 名前:デフォルトの名無しさん [04/07/18 18:25] >>140 VisualStudio.netの間違いです。 訂正するまでもない間違いだと思い流してました。
142 名前:VB開発者 [04/07/18 21:51] 現在、Visual Basic .NETで開発をしている者です。 昨日までは何の問題も無く開発が出来たんですが、 昨日ごろから、VB .NETのアプリケーションを作ろうと、プロジェクトの新規作成をクリックすると、 「オートメーションサーバーはオブジェクトを作成できません」と表示され、新規作成出来ません… 設定をいじくった覚えは無いのですが、どうやったら解決できるのでしょうか? ご指南賜りたく存じます。
143 名前:デフォルトの名無しさん [04/07/18 21:52] 正規品を使え。
144 名前:デフォルトの名無しさん mailto:sage [04/07/18 21:57] ここに来るのはプログラマや開発者のはずなのに、なぜこんなに問題の絞込みの出来ない人が多いんだろう?
145 名前:VB開発者 [04/07/18 22:15] 正規品を使っていますよ。 その証拠に昨日まではちゃんと作成できていましたし。
146 名前:デフォルトの名無しさん [04/07/18 22:25] 「オートメーションサーバーはオブジェクトを作成できません」を www.google.co.jp で検索してください。
147 名前:VB開発者 [04/07/18 22:30] >>146 さん 検索してみたところ、Nortonをインストールしている場合のエラーが出てきましたが、 つい先週ほどNorton System Workをアンインストールしたところです…
148 名前:デフォルトの名無しさん [04/07/18 22:32] >>142 www.gdncom.jp/general/bbs/ShowPost.aspx?PostID=11182
149 名前:VB開発者 [04/07/18 22:38] >>148 様 ありがとうございました。おかげさまで修復できました。 教えてクンで申し訳ございませんでした。これからは検索をきちんとしてみようと思います。 皆様、ご迷惑お掛けいたしました。
150 名前:初心者 mailto:sage [04/07/18 23:07] textboxに入力した値を計算してmsgboxで表示させたいんだが(´・ω・`) 1.入力した値を計算式にするにはどうすれば・・ 2.msgbox中で、メッセージ結果メッセージ みたいなのにするには・・ 厨っぽい質問でスマソOTZ
151 名前:デフォルトの名無しさん [04/07/18 23:24] >>150 どういう値を入力させるの? 1つのtextboxに、1920/726+829*7427-784みたいな式を入れる? 2つのtextboxにそれぞれ数値を入れて、+,-,*,/ボタンを押して計算?
152 名前:デフォルトの名無しさん mailto:sage [04/07/19 00:22] >>135 関係あるかどうかわからんけど、 OSのログオンに日本語のアカウント名使ってる? 半角英数字のアカウント作ってやるとどう?
153 名前:デフォルトの名無しさん mailto:sage [04/07/19 14:39] 比較的簡単な顧客管理DBを作るときって クライアントPC数が5台ぐらいあったら、ストアドつかったほうがいいですか? それともADO.NETでガリガリ書いたほうがいいですか?
154 名前:dame [04/07/19 17:16] かなり基本的な質問なんですが、よろしくお願いします。 作成したプロジェクトの入ったフォルダを移動したり、 名前を変更すると、開く事ができなくなりますよね。 この解決方法ってないのでしょうか。 あるプロジェクトで作ったフォームを別のプロジェクトにコピーしたり、 バックアップで保存しておいたりとかがとても不便で こまっております。どうかよろしくお願いします。
155 名前:デフォルトの名無しさん mailto:sage [04/07/19 17:23] プロジェクトのフォルダにある色々なファイルをメモ帳とかで開いてみ。 大体わかる。
156 名前:デフォルトの名無しさん [04/07/19 17:25] >>154 >作成したプロジェクトの入ったフォルダを移動したり、 >名前を変更すると、開く事ができなくなりますよね。 普通にやってる限りそんなことは全くないので、もう少し詳しく書いたほうがいいと思う。
157 名前:デフォルトの名無しさん [04/07/19 17:29] 全てのVBプログラマは蜂起せよ!! 構造体のないVBは【糞】 news17.2ch.net/test/read.cgi/news7/1088807486/
158 名前:デフォルトの名無しさん [04/07/19 17:35] ↑プ、また騙されたのね、の予感。。。 んなつまらんことで楽しいと思える君は幸せだね。 俺はそんな幸福な馬鹿になるぐらいなら不幸でいいけど。
159 名前:デフォルトの名無しさん mailto:sage [04/07/19 17:44] VBに構造体はある罠
160 名前:デフォルトの名無しさん mailto:sage [04/07/20 10:44] .NET Framework クラス ライブラリにダイアルアップ関係は 無いのでしょうか。 www.microsoft.com/japan/msdn/library/ja/cpref/html/cpref_start.asp で検索してみたものの、それらしきものは見当たらず・・・・ VB.NETでダイアルアップはどう実現できるか、どなたかご助言くださいませ
161 名前:128 mailto:sage [04/07/20 10:54] >>131 ( 今探したんですが、この記事参考になると思います。 www.eggheadcafe.com/articles/20031027.ASP ) VB.NET は良く知らないのですが、たぶんこんな感じでしょう。 Dim Data1 As mshtml.IHTMLDocument3 Dim Data2 As mshtml.IHTMLElement Dim Data3 As mshtml.IHTMLInputFileElement Data1 = AxWebBrowser1.Document Data3 = Data1.getElementById("ID") Data3.value = "C:\aaa\aaa" IHTMLElement から IHTMLInputFileElement への型変換は自動的にやってくれるはずです。 で、あとは type="submit" の input 要素を探して、click してあげるわけですが、 ID が付いていれば同様に getElementByID で出来るのですが、ID が無い場合には、 無い場合には、document の all プロパティに階層関係を無視した全ての要素の集合があるので、 Dim element As mshtml.IHTMLElement For element in Data1.all If element.tagName = "input" Then If element.getAttribute("type") = "submit" Then element.Click End If End If Next element のようにして sumbit してあげると良いでしょう。(input type="submit" の要素に onclick 等による 妙な仕掛けが無い場合には、form 要素を探して element.submit しても良いです).
162 名前:デフォルトの名無しさん [04/07/20 19:48] 今更なんですが、VB.NETで.NET Frameworkを使わないアプリケーションの 開発ってできますか?
163 名前:デフォルトの名無しさん mailto:sage [04/07/20 20:47] できません
164 名前:デフォルトの名無しさん [04/07/20 21:14] >>163 何も知らないんだな馬鹿が
165 名前:デフォルトの名無しさん [04/07/20 21:52] 構造体の配列に初期値を入れたいのですが下のようにやっても だめなのはなぜですか。 Public structure s public a as integer public b as integer End structure Dim c() as s = New s(){New s(0,1),New s(2,3)}
166 名前:デフォルトの名無しさん mailto:sage [04/07/20 22:55] コンストラクタ書け
167 名前:デフォルトの名無しさん [04/07/20 23:02] >>165 ていうかs(0,1)って何? 私は人間だからあなたの意図はなんとなく伝わるけど、 コンパイラは人間の願望をくみ取るようにはプログラムされてないでしょ?
168 名前:デフォルトの名無しさん mailto:sage [04/07/20 23:06] まあ昔の構造体感覚だと別にありえない発想ではない。
169 名前:デフォルトの名無しさん mailto:sage [04/07/20 23:12] dim as integer
170 名前:デフォルトの名無しさん [04/07/20 23:18] みなさん! 夏ですね!!
171 名前:デフォルトの名無しさん mailto:sage [04/07/20 23:22] そうですね。
172 名前:デフォルトの名無しさん mailto:sage [04/07/20 23:53] コンストラクタを書けばこれでいいのか? c() = New s(0,1,2,3)
173 名前:デフォルトの名無しさん mailto:sage [04/07/21 00:12] なわけないよな
174 名前:デフォルトの名無しさん mailto:sage [04/07/21 00:48] 初心者です。ファイルダウンロード支援ツールなどにあるリストビューの中に プログレスバーがあって、ファイルのダウンロードの進行具合を把握できるやつ ありますよね。あれってどうやってるのかな?ぐぐってみたんだけどいい例は見 つからなかったです。VB.NETでどうやって実現するのでしょう。
175 名前:デフォルトの名無しさん mailto:sage [04/07/21 00:55] >>166-173 皆さんのレスのおかげで理解できました。 Public Structure s Public a As Integer Public b As Integer Public Sub New(x As Integer,y As Integer) a=x b=y End Sub End Structure
176 名前:133 mailto:sage [04/07/21 08:57] あれ、133ですが、どなたも答えて下さらないのですね; ASP.NETがデバッグできないのは仕様なんでしょうか? もいちど質問してみます・・・ >>133
177 名前:デフォルトの名無しさん mailto:sage [04/07/21 12:44] >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね; >あれ、133ですが、どなたも答えて下さらないのですね;
178 名前:デフォルトの名無しさん [04/07/21 13:38] >>176 > ASP.NETがデバッグできないのは仕様なんでしょうか? 仕様ではない。やり方がまずいだけ。 つーか、スレ違い。帰れ。
179 名前:デフォルトの名無しさん [04/07/21 14:01] 初めてバイナリを扱うんだけど、もともと10バイトのファイルに バイナリで6バイト書き込んだ場合後ろ4バイトは元のデータが残った ままですよね?これを消して6バイトのファイルにしたい時は どうすればいいんですか? 超初歩的なことなんだろうけど良い検索ワードが思い付かなかったので ここで質問させてもらいます
180 名前:133 mailto:sage [04/07/21 14:23] すまんかった。 そんなに煽らないでおくれ。 どのスレいったらよいのでしょう。 さすらってきま
181 名前:デフォルトの名無しさん [04/07/21 15:34] >>133 www.atmarkit.co.jp/fdotnet/index/bbs/dir74.html 回答だけじゃなく、質問も参考にすべし。
182 名前:デフォルトの名無しさん [04/07/21 15:46] >>179 まず、ヘルプで FileOpen 調べれ。 Output で Append じゃなければ上書きだ。
183 名前:133 mailto:sage [04/07/21 18:19] >>兄貴 (>>181 ) ありがとうございます!! 質問を参考に1から頑張ってきます! ああ、暖かい・・・
184 名前:デフォルトの名無しさん [04/07/21 19:37] おまえら、どうか教えてください。 コンソールアプリケーションで、マウスカーソルを画面右下に飛ばしたいんだけど、 以下のコードを実行するとなぜか、画面右上に飛んでしまうんだよね・・・。 ------------------------------------------------------------------------------------------ Module Module1 Public Declare Function SetCursorPos Lib "USER32" (ByVal x As Long, ByVal y As Long) As Long Sub main() Call SetCursorPos(1024, 768) End Sub End Module ------------------------------------------------------------------------------------------ 768のところは、どんな数値にしても同じ結果・・・。 なぜ??
185 名前:デフォルトの名無しさん [04/07/21 20:01] >>184 Long×、Integer○
186 名前:デフォルトの名無しさん mailto:sage [04/07/21 20:14] 教えてください。 データベースにVariable、Dataというフィールドを作成しました。 例えばPHPの場合ですと、以下のような感じでVariableを変数名、 Dataをその値に設定できます。 while ($db->next_record()) { ${$db->f("Variable")} = $db->f("Data"); } これをVB.netで行うことは出来ないでしょうか? ちなみに以下のような感じで処理しており、変数をデータベースに追加するごとに Caseを追加しなければならない状態です。 While OleRs.Read() Select Case OleRs.Item("Variable") Case "A" A = "" & OleRs.Item("Data") Case "B" B = "" & OleRs.Item("Data") ・ ・ End Select End While
187 名前:184 [04/07/21 20:45] >>185 すげー、解決した。 ありがd
188 名前:デフォルトの名無しさん mailto:sage [04/07/21 20:52] >186 俺はPerl使いだが少なくともPerlではそういう使い方は推奨されないな。 PHPはそんなのを普通に使う奴が多いのか? Perlでならハッシュ使えって言われるのが普通だな。 PHPは知らん。 VB.NETならHashTable使え。
189 名前:186 mailto:sage [04/07/21 21:14] >>188 自分で考えたもので、こんな感じのソースは本やネット上では見たことがありません。 具体的ににはSQL文でIDフィールドをWHEREして、必要な情報のみ取り出しています。 変数を簡単に管理できるし楽だなぁと思ったもので・・・ とりあえず、HashTableを勉強してみます。 ありがとうございました。
190 名前:デフォルトの名無しさん [04/07/22 00:40] >>162-164 どっちでしょうか? できるの? できないの?
191 名前:デフォルトの名無しさん mailto:sage [04/07/22 00:42] >>190 いわゆる、Windowsネイティブなアプリの事なら、 VB.NETではできません。VC#も然り。 VC++なら可能
192 名前:デフォルトの名無しさん [04/07/22 00:42] .NETではVB6.0まであったコンボのメソッドAddItemは使えないのでしょうか? それともどこかのクラスライブラリにありましたか? コンボ名.Items.Addで処理そのものはできましたが。
193 名前:デフォルトの名無しさん mailto:sage [04/07/22 00:43] >>191 ありがとう。
194 名前:デフォルトの名無しさん mailto:sage [04/07/22 15:03] >>192 名称の統一で変更になったと思う メソッド名が変わることによる不利益は???
195 名前:インスタント mailto:medaroter-school@mail.goo.ne.jp [04/07/22 16:31] 今、画像ソフトの製作をしているのですが、 拡大処理がうまくいきません。 画像処理といっても、ドット絵なんで、 ドット毎の色を認識させ、表示させるのでしょうが、 やりかたがよくわかりません。 素人みたいな質問ですいませんが、できるかた教えていただけませんか?
196 名前:デフォルトの名無しさん mailto:sage [04/07/22 17:50] >>195 StrechBltでぐぐれ
197 名前:デフォルトの名無しさん [04/07/22 18:24] Excelのワークブックからユーザ定義プロパティの値を取得しようと試みているのですが、 VBAと同じように取れずに困っています。 Excel-VBAだと Dim prop as DocumentProperties set prop = ActiveWorkbook.CustomDocumentProperties でプロパティリストを得ることができるのですが、 VB.NETで同じように Dim prop as Excel.DocumentProperties prop = appExcel.ActiveWorkbook.CustomDocumentProperties とすると、実行時にキャストが誤っているというエラーが出てきます。 オブジェクトブラウザで確認すると、CustomDocumentPropertiesの戻り値型がObject型に なっていて、明らかにVBAの方と違っているのですが、これはこういう仕様で、 VB.NETでExcelワークブックのユーザ定義プロパティは取得できないのでしょうか? 方法をご存知の方、ぜひ教えてください。
198 名前:デフォルトの名無しさん mailto:sage [04/07/22 18:32] 実験してないので正確じゃないかもしれないが Object型で戻ってるものをDocumentProperties型に直接代入することは出来ないので Ctype(戻り値,DocumentProperties)でキャストしなおしてみる
199 名前:デフォルトの名無しさん [04/07/22 18:37] TextBox から派生したコントロールのクラスを作ってるんですが、そのクラスにプロパティを 追加しました。 で、いざその作成したコントロールを使おうとした場合、VisualStudio の画面でプロパティを 設定する場合、0とか1とかの設定値そのものを設定したのですが、これを標準のプロパティ である ImeMode のようにコンボボックスによる選択式にすることってできますでしょうか? ご存知の方がいらっしゃいましたらご教授願えませんでしょうか?
200 名前:デフォルトの名無しさん mailto:sage [04/07/22 18:40] >>197 CType で明示的にキャストする必要があったんでないかな。 これでだめならソース出して見れ。こっちで確認すっから。
201 名前:197 [04/07/22 18:40] >>198 レスどうもです。 prop = CType(appExcel.ActiveWorkbook.CustomDocumentProperties, Excel.DocumentProperties) で試してみましたが、やはり同じ実行時のキャストエラーが出てきます。 オブジェクトの生成型がDocumentProperties型じゃない感じです。 もし、VB.NETから、Excelのマクロのfunctrionを呼び出せればExcel-VBA側で取得したデータを 戻すようにできるのですが、呼び出すはできましたっけ?
202 名前:197 [04/07/22 18:46] >>200 レスどうもです。 やろうとしていることは、ユーザ定義プロパティの値をすべて取得することで、 コードは次のような形です。 実行の前提条件としてExcelは起動済みで、そのアプリの参照変数がappExcelです。 Dim WB As Excel.Workbook = appExcel.ActiveWorkbook 'appExcelはExcelアプリの参照変数です Dim DPS As DocumentProperties Dim DP As DocumentProperty DPS = WB.CustomDocumentProperties ←ここで実行時にキャストエラーが出る For Each DP IN DPS プロパティ値を取得するコード Next
203 名前:デフォルトの名無しさん mailto:sage [04/07/22 18:56] >>202 support.microsoft.com/?kbid=303294 PIA を使わんとだめかも。
204 名前:174 mailto:sage [04/07/22 19:00] 174だけどわかる人いない? VB6だとカスタムドローでやるみたいなんだけど・・・ .NETではどうやってやるの?
205 名前:デフォルトの名無しさん [04/07/22 19:05] ていうかオーナードローが理解できてるんなら VB6でもNETでも同じ事だと思うんだけど。。。
206 名前:174 [04/07/22 19:23] 同じ用にやればいいの? WindowsProcでカスタムドロー・・・っていう感じ? タブコントロールだと標準でオーナードローがあるんだよね? でもListViewだと見当たらないんだよな〜 見当外れの事いってたらスマソ
207 名前:デフォルトの名無しさん mailto:sage [04/07/22 19:39] フローティングツールバーは売られているみたいですが、 MFCみたいに(Visual C++6.0でウィザードが作ってくれるみたいに) 標準で提供されてないですか?
208 名前:デフォルトの名無しさん mailto:sage [04/07/22 20:48] >>198 >>200 実行時にキャストのエラーガ出るんだからキャスト自体は実行しようとしてる。 # Option Strict Off の場合はこれでいける。 問題は実際に返されるオブジェクトの実行時型が違ってしまってるってことだな。 メソッドの戻り値の実行時型を確認したければ、 とりあえずObject型に代入しといてウォッチとかで見れると思う。 まあ、代入せんでもウォッチ式にそのまま書いてもいいが。
209 名前:デフォルトの名無しさん [04/07/23 04:50] BitBlt関数を使いたいのですが、VB.NETではPictureBoxのハンドルを 直接取得できないんでしょうか?
210 名前:デフォルトの名無しさん mailto:sage [04/07/23 07:21] >>209 そのまんま、Handleってプロパティあるじゃん。
211 名前:デフォルトの名無しさん mailto:sage [04/07/23 07:38] >>210 それ違うだろ
212 名前:197 [04/07/23 08:14] >>203 >>208 CustomDocumentPropertiesが返してくるオブジェクトの型はSystem.__ComObjectという 型で、本来の型をラップしているようで、結局どの型をラップしているのかはわからなかったのですが、 強引にSystem.__ComObject型のままプログラムを組みました。 Dim WB As Excel.Workbook = appExcel.ActiveWorkbook Dim DPS As Object DPS = WB.CustomDocumentProperties Trace.WriteLine(DPS.Item(1).Name) なんか納得できないけど、作業が終わったら、この変なラッパクラスをじっくり調べたいと思います。 レスくれた方達、どうもでした!
213 名前:デフォルトの名無しさん mailto:sage [04/07/23 10:53] theSpokeを買って書類もマイクロソフトに郵送したのですが未だにシリアルキーがもらえませんが どうしたらいいのでしょうか。
214 名前:デフォルトの名無しさん [04/07/23 11:53] MSに連絡するのが一番
215 名前:デフォルトの名無しさん mailto:sage [04/07/23 12:26] >>213 エラースキャン、デフラグ、エロ動画の削除 この辺をやって待ちわびるよろし
216 名前:名無しさん@お腹いっぱい。 [04/07/23 17:15] IMEがONのテキストボックス(Text1)にフォーカスがある状態でキーを押した場合 Text1_KeyDownのe.KeyCodeがKeys.ProcessKeyだということはすでにIMEが処理済 なのだと思うのですがIMEが処理する前にイベント補足して送られる仮想キーコードを変更することは可能でしょうか? バカバカしい話なのですがキーボード左上の1,2,3・・・のキーをあ、い、う・・・に代えたいという要望に答えるためです。 そもそも考えが間違ってるとは思いますが方法があればご教授ください。
217 名前:216 mailto:sage [04/07/23 18:03] 我ながら根本的に無理な気がしてきました・・・
218 名前:デフォルトの名無しさん mailto:sage [04/07/23 20:30] キーフック使え
219 名前:デフォルトの名無しさん mailto:sage [04/07/23 20:47] 鼻フックのがいいよ。
220 名前:デフォルトの名無しさん mailto:sage [04/07/23 21:07] システムを起動時にネット(FTP,Webにアップしたファイル)に接続して、 常に最新版をチェックし、最新版なら自動でダウンロードし、 アップデートするような仕組みって難しいのでしょうか。 アップデートファイルをダウンロードしてシステムが起動していない時に 実行(システムファイル上書き)するようなものは一応出来たのですが。 システムファイルを使用中に上書きすることが出来ないので 自動アップデートの仕組みが不思議です。
221 名前:デフォルトの名無しさん mailto:sage [04/07/23 21:51] >>220 .NET Application Updater Component
222 名前:220 mailto:sage [04/07/23 22:09] >>221 さん、ありがとうございました。
223 名前:デフォルトの名無しさん mailto:sage [04/07/23 23:12] たまに自動アップデートすると再起動要求されて そのまま二度と立ち上がらなくなることあるよね
224 名前:デフォルトの名無しさん mailto:sage [04/07/23 23:19] .NET板 bbs.2ch2.net/dotnet/
225 名前:デフォルトの名無しさん [04/07/23 23:32] >>223 割れXPですか?
226 名前:デフォルトの名無しさん [04/07/24 15:11] WebBrowserで、ボタンを押すと前のページに戻るっていうのは どのように作れば出来ますか? あと、WebBrowserについて詳しく書かれているところありますか?
227 名前:デフォルトの名無しさん mailto:sage [04/07/24 16:15] Visual Studio .NETにて、Officeアプリケーションのイベントを 拾って特定の処理を行うようなプログラムを作ろうとしています。 イベント監視を行うようなクラスってありますでしょうか?? Main関数にて、Application.Runでオブジェクトをnewしないとすぐに プログラムが終わっちゃうし、Application.RUnを使う場合は、 Formクラスを継承したオブジェクトを作成しないとだめだし、 Formクラスを継承したオブジェクトを作ると、画面にフォームが 表示されてしまいます。。。
228 名前:デフォルトの名無しさん mailto:sage [04/07/24 17:50] >>226 GoBackで戻れるのではないかと。 >>227 例えばどんなイベント? フォームにオブジェクトとして追加ではなく、 そのアプリケーションでおきたイベントを取りたいのであれば フックを作んなきゃ駄目でしょう。
229 名前:227 mailto:sage [04/07/24 18:46] >>228 Visio2003でシェイプが図面に配置されたイベントや、シェイプが図面が 削除されたイベントです。 フックですか!初めて聞く単語です。 調べてみます。どうもです!
230 名前:デフォルトの名無しさん mailto:sage [04/07/24 21:01] >>227 フォームを指定しないRunもあるんだが…
231 名前:デフォルトの名無しさん mailto:sage [04/07/24 23:02] >>227 Runメソッドのオーバーロードリスト見れ。
232 名前:デフォルトの名無しさん [04/07/25 02:00] >>228 あ、GoBackですか。ありがとうございます! というわけでやってみたのですが、これ以上進めないときに(戻れないときも) 進むボタンを押すとエラーが起こってしまいます。どう対処すればよいのでしょうか? Private Sub Button2_Click (略) Handles Button2.Click AxWebBrowser1.GoForward() End Sub
233 名前:デフォルトの名無しさん mailto:sage [04/07/25 02:04] Try AxWebBrowser1.GoForward() Catch ex as Exception Messagebox.show("すすめませんよ") End Try
234 名前:デフォルトの名無しさん mailto:sage [04/07/25 02:07] >>232 こんなんどうよ?C#だけど。 protected void AxWebBrowser_CommandStateChange(object sender, DWebBrowserEvents2_CommandStateChangeEvent e) { if(e.command.Equals(SHDocVw.CommandStateChangeConstants.CSC_NAVIGATEBACK)) { MenuItem miView = MenuMain.MenuItems[2]; MenuItem miGoTo = miView.MenuItems[3]; miGoTo.MenuItems[0].Enabled = e.enable; TbBack.Enabled = e.enable; } if(e.command.Equals(SHDocVw.CommandStateChangeConstants.CSC_NAVIGATEFORWARD)) { MenuItem miView = MenuMain.MenuItems[2]; MenuItem miGoTo = miView.MenuItems[3]; miGoTo.MenuItems[1].Enabled = e.enable; TbForward.Enabled = e.enable; }
235 名前:デフォルトの名無しさん [04/07/25 02:31] >>234 凄いっ!!でもC#ですか…残念です。 それをVBに変換するソフトとかありませんでしたっけ?
236 名前:デフォルトの名無しさん mailto:sage [04/07/25 02:49] こんなもんC#の文法知らなくても想像で直せるだろ。
237 名前:234 mailto:sage [04/07/25 04:05] 分からんようなんで、VB.NETに直してみた。 Private Sub ToolBar1_ButtonClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolBarButtonClickEventArgs) Handles ToolBar1.ButtonClick If e.Button Is Me.GoBackButton Then Me.AxWebBrowser1.GoBack() ElseIf e.Button Is Me.GoForwardButton Then Me.AxWebBrowser1.GoForward() End If End Sub Private Sub AxWebBrowser1_CommandStateChange(ByVal sender As System.Object, ByVal e As AxSHDocVw.DWebBrowserEvents2_CommandStateChangeEvent) Handles AxWebBrowser1.CommandStateChange If e.command = SHDocVw.CommandStateChangeConstants.CSC_NAVIGATEBACK Then Me.GoBackButton.Enabled = e.enable ElseIf e.command = SHDocVw.CommandStateChangeConstants.CSC_NAVIGATEFORWARD Then Me.GoForwardButton.Enabled = e.enable End If End Sub 初めてVB系書いたんで、変なとこがあったら無視してくれ。 GoBackButtonとGoForwardButtonは、コンストラクタでEnableをFalseにしとく。
238 名前:デフォルトの名無しさん [04/07/25 12:18] >>237 このとおりにやってみました。 そしたら戻れないようになりました!ありがとうございます! ですが、戻るボタンを押しても戻りません。 Me.AxWebBrowser1.GoBack() を AxWebBrowser1.GoBack() にしても駄目でした…
239 名前:デフォルトの名無しさん mailto:sage [04/07/25 12:27] >>238 .NET 1.1だよね? うちでは動作するんで、ソースさらすよ。 www.asahi-net.or.jp/~ec6k-mtmr/VBnet_BrowserTest.zip
240 名前:eko [04/07/25 12:43] 質問です。 現在、スプレッドシートを自作をしているのですが それをフォーム1に貼り付けて、右クリックしてコンテキトにデザイナと 言うメニューを追加して、選択するとフォーム2を立ち上げて (ここまでは何とかできました・・。) そのフォーム2からフォーム1のデザイン(プロパティ)を変更する方法が 判りません。 ちなみにスプレッドはpaintで描画してます。 拙い説明ですが、ご存知の方居ないでしょうか?? よろしくお願いします。
241 名前:デフォルトの名無しさん [04/07/25 16:38]
242 名前:デフォルトの名無しさん [04/07/25 16:49] ヘ_ヘ ミ・・ ミ ということにしたいのですね :) ( ° )〜
243 名前:233 mailto:sage [04/07/25 16:50] スルーかよ・・・
244 名前:デフォルトの名無しさん mailto:sage [04/07/25 17:36] >>243 なんだ?つっこんで欲しいのか?
245 名前:デフォルトの名無しさん [04/07/25 21:45] >>239 何でなんですかね。おかしいところは無かった様な気がするのですが。 でも、ほかの事をして何とかなりました。 いろいろありがとうございました!!!
246 名前:デフォルトの名無しさん [04/07/25 22:10] Textboxコントロールの、 Textプロパティにて、 その桁数をあらわすにはどうすればいいでしょう? 例えば、TextBox1というテキストボックスの値(MAX10桁)で、 5桁だけ入力されていたらなにか処理をする場合、 If TextBox1.Text=(5桁)Then 【処理】 End If 教えてください。お願いします。
247 名前:デフォルトの名無しさん mailto:sage [04/07/25 22:18] Lengthだっけかな。ってかマニュアル見ろ。
248 名前:デフォルトの名無しさん mailto:sage [04/07/25 22:46] >>246 普通に、Len() で OK。
249 名前:デフォルトの名無しさん mailto:sage [04/07/25 22:47] 個人的にLenはお奨めしない。ま、別にいいんだけどね。
250 名前:デフォルトの名無しさん [04/07/25 23:58] またなんですが、 WebBrowserで読み込みを中止するにはどうしたらいいのでしょうか?
251 名前:デフォルトの名無しさん mailto:sage [04/07/26 00:15] >>250 Me.AxWebBrowser1.Stop() のことなのか?
252 名前:デフォルトの名無しさん [04/07/26 00:22] >>251 それです、それ! ありがとうございました!!
253 名前:デフォルトの名無しさん mailto:sage [04/07/26 00:30] 分からん部分はまとめて書いてくれ。 なんか多そうだし。
254 名前:↑ mailto:sage [04/07/26 00:45] 嫌味とか冷やかしで言ってるワケじゃないので。
255 名前:デフォルトの名無しさん mailto:sage [04/07/26 09:20] >>240 俺はデザイナフォームに一時ファイル名を渡してやってるよ。 デザイナ起動時に対象のコントロールの内容を一時ファイルに保存してデザイナ側 で読み込み、変更を反映する場合は、逆にデザイナのコントロールの内容を一時ファイル に保存するってな感じで。 あと、変更の反映するかの確認が必要なければ、参照渡しのコントロールを、デザイナに セットすれば完全な同期がとれると思う。 はずしてたらスマソ。
256 名前:デフォルトの名無しさん [04/07/26 10:24] >>254 じゃあ、お言葉に甘えて… WebBrowserで新しいウィンドウが出てくるとそのページはIEで開かれちゃうじゃないですか。 そのページを自作ブラウザで開かせるのはどうしたらいいのですか?
257 名前:デフォルトの名無しさん mailto:sage [04/07/26 11:49] >>256 こんな感じで。 Private Sub AxWebBrowser1_NewWindow(ByVal sender As System.Object, ByVal e As AxSHDocVw.DWebBrowserEvents2_NewWindow2Event) Handles AxWebBrowser1.NewWindow2 Dim form2 As New Form1 e.ppDisp = form2.AxWebBrowser1.Application form2.Show() End Sub
258 名前:デフォルトの名無しさん [04/07/26 12:54] 質問です。 メモ帳を作成したのですが、 テキストファイルからプログラムを実行した際に、 テキストファイルを読み込む処理の仕方が分かりません。 プログラムをexeから実行したのかファイルから実行したのか判別する 方法は無いのでしょうか。
259 名前:デフォルトの名無しさん mailto:sage [04/07/26 13:13] >>258 質問の意味がいまいち分からないが、 Command関数を調べると、いいかも知れんね。
260 名前:258 mailto:sage [04/07/26 14:13] >>259 サンクス!
261 名前:デフォルトの名無しさん [04/07/26 15:44] >>257 本当に助かりました! ありがとうございました!!!!!!!
262 名前:只今勉強中 mailto:sage [04/07/26 16:36] Public Sub New(ByVal idcarF1 As Integer) MyBase.New() InitializeComponent() idcarF2 = idcarF1 Dim filterIdcarF2 As integer 'Dim filterIdcarF3 As integer filterIdcarF2 = idcarF2 'filterIdcarF3 = 5 UpdateDatabase() 'SQL文 SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM excol_data " _ & "WHERE car_id LIKE '" & filterIdcarF2 & "'" 'データセットを初期化して、データーアダプターからデーターを読み込む DsExcol1.Clear() SqlDataAdapter1.Fill(DsExcol1) End Sub ウィンドウを開くと同時にfilterIdcarF2を使って、データーを絞り込むという作業を作りました。さらに ”filterIdcarF3 = 5"で"excol_cd"の値が"5"のものを絞り込みたいのですが、SQL文の所の書き方 をどなたか教えていただけないでしょうか?
263 名前:デフォルトの名無しさん mailto:sage [04/07/26 17:34] excol_cd の型は?それがないと正確に答えられない。 たぶんSQLスレ行けって言われると思うけど。
264 名前:デフォルトの名無しさん mailto:sage [04/07/26 17:57] >>262 F2で絞り込んだものをさらにF3で絞り込むのか F2とF3を同時に発行して絞り込むのか あとInteger型のものに対してLike(あいまい)で検索かけてるけど これはこれでいいの?
265 名前:デフォルトの名無しさん mailto:sage [04/07/26 18:24] >>264 car_id が Integer型ってどうして分かるの?
266 名前:262 mailto:sage [04/07/26 18:39] すいません、もう右も左もわかんなくて、本を引き引きやってる状態で・・・。 excol_cdもcar_idも整数型です。 あと、F2で絞り込んだものをさらにF3で絞り込みたいのです。自動車の種類別 のコードがF2で、外装の色がF3で、この二つで絞り込んで、内装の色を検索し たいので・・・。 Likeがあいまい検索だというのは、いまスレを見て始めて知ったので外してみたら、 SqlDataAdapter1.Fill(DsExcol1)の行で止まってしまい、LIKEの代わりを今探して SQLのサイトとニラメッコしています。
267 名前:262 mailto:sage [04/07/26 19:13] SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM excol_data WHERE car_id = 18" これだ18番のcar_idを持つものが表示されるのですが SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM excol_data WHERE car_id = filterIdcarF2" だと動いてくれないようです・・・。なにか書きようがあるのでしょうか?
268 名前:デフォルトの名無しさん mailto:sage [04/07/26 19:58] >>267 困ってるのはわかるが、落ち着いて VB の入門書と SQL の入門書を読んだ方が 結局は早いと思うよ。
269 名前:デフォルトの名無しさん mailto:sage [04/07/26 21:50] SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM excol_data WHERE car_id = " + filterIdcarF2 + " and car_id = " + filterIdcarF3 + " and excol_cd = 5"
270 名前:デフォルトの名無しさん mailto:sage [04/07/26 22:52] VBAって次に VBA.NET になるんですかね。
271 名前:デフォルトの名無しさん mailto:sage [04/07/27 00:42] String の配列に入っているテキストデータを TextBox で編集しようと思って, Dim List(200 ) As String で, TextBox1.Text = "" For a=0 To List.GetUpperBound(0) TextBox1.text &= List(a) & vbCrLf Next のようにしましたが,編集後のテキストデータを再び Stringの配列に 戻すところでつまりました. このような,何かのプログラム内での プチエディタ なんかは, どういう風に実現するのが良いのでしょうか?
272 名前:デフォルトの名無しさん mailto:sage [04/07/27 00:58] >>271 配列をそのままTextBox.Linesプロパティに入れて、編集後にTextBox.Linesをそのまま配列に戻すのは駄目なん? 的外れだったらスマソ。
273 名前:デフォルトの名無しさん mailto:sage [04/07/27 01:22] >>272 おおっ. そんなものがあったのか. ご教授ありがとうございました. テキストデータの行数がいろいろ変わるので, やっぱり For文 で回したほうがいいみたいでした. とにかく解決.ありがとうございました.
274 名前:デフォルトの名無しさん mailto:sage [04/07/27 13:35] >>272 さんのおかげで少し進んだのですが,,, 今度は,TextBoxのカーソル位置を表示してみようと思いまして,,で, Cur = TextBox1.SelectionStart If Cur <= 0 Then y = 1 : x = 1 Else c = 0 : y = 0 Do x = Cur - c c += TextBox1.Lines(y).Length + 2 If Cur < c Then Exit Do y += 1 Loop For xx = x - 1 To 0 Step -1 If AscW(TextBox1.Lines(y).Substring(xx, 1)) >= 256 Then x += 1 Next y += 1 : x += 1 End If Label1.Text = y & "行 " & x & "桁" こんなんになってしまったのですが,これだと 各行の文字数を先頭から 足して来たり,各文字が全角かどうか一文字ずつ調べたりしてて, TextBox の文字数が多くなると遅そうですよね. 他にスマートな方法があれば教えていただきたいのです.
275 名前:デフォルトの名無しさん [04/07/27 13:45] picture clip controlは.NETには入ってないのでしょうか?
276 名前:216 [04/07/27 16:42] >>217 ヒントありがとうございます キーフック自体わからず調べながらやってみたのですがなかなかうまくいきません。 SetWindowsHookExtというAPIでキーボードのメッセージを捕捉できるところまで行ったのですが 次に自分でPostMessageで別のキー入力を起こそうと思っているのですがここがダメです。 今フォームにテキストボックスが1コはっつけてやってみています Function KeyBoardProc(ByVal nCode As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer If nCode < 0 Or nCode = 3 Then Return CallNextHookEx(m_hHook, nCode, wParam, lParam) End If Dim ret As Integer Dim iMsg As Integer If wParam = CInt(Keys.A) Then If lParam And &H80000000 Then iMsg = WM_KEYUP Else iMsg = WM_KEYDOWN End If wParam = Keys.E PostMessage(TextBox1.Handle.ToInt32, iMsg, wParam, lParam) CallNextHookEx(m_hHook, nCode, wParam, lParam) Return 1 End If End Function TextBox1のIMEモードはひらがなにしてあります。 aのキーを打つとeがテキストに入るのですがほんとは「え」と入ってIMEで変換できる状態(えの下に点線の下線)になって欲しいのです。 的外れと思いつつImmGetContextの返値をPostMessageの第一引数にしてみましたがさっぱりでした。 何がいけないのか教えてください。
277 名前:216 mailto:sage [04/07/27 16:44] >>276 ヒントを頂いたのは >>217 ではなく >>218 でした というか217は自分でした・・・
278 名前:デフォルトの名無しさん mailto:sage [04/07/27 16:54] >>274 Win32API使ってもOKなら、user32.dllのGetCaretPosでいける。 do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049&rm=10 ここの>>32 にC#版がある。
279 名前:デフォルトの名無しさん mailto:sage [04/07/27 20:32] do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049&res=32&fi=no
280 名前:デフォルトの名無しさん mailto:sage [04/07/27 21:28] >>278 >>279 C# がわからないのでいろいろ苦労しました. いや,C# の問題じゃなくて,Win32API ってやつの方かな. ヘルプとかいろいろ調べてやっとできました. Win32API ってのは初めての経験なもので... Declare Function SendMessage Lib "user32" Alias "SendMessageA" _ (ByVal hWnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer ってのを作っといて, y = SendMessage(TextBox1.Handle, &HC9, -1, 0) x = TextBox1.SelectionStart - SendMessage(TextBox1.Handle, &HBB, y, 0) For xx = x - 1 To 0 Step -1 If AscW(TextBox1.Lines(y).Substring(xx, 1)) >= 256 Then x += 1 Next y += 1 : x += 1 Label1.Text = y & "行 " & x & "桁" って感じでできたみたい. 全角文字のカウントは残りましたが,だいぶ速くなりました. どうもありがとうございました.
281 名前:デフォルトの名無しさん [04/07/27 23:34] ちと教えてください。 CrystalReport に Textオブジェクト を作って、そこにモジュールレベル変数 (String型)の内容を埋め込むには、どうしたら良いでしょう? Accessのレポートなら作ったことあるんですが、 CrystalReport はちょっと勝手が違うん困ってます。 お願いします。
282 名前:デフォルトの名無しさん mailto:sage [04/07/27 23:51] >>281 データソースはDB? それとも実行時に任意に与える数値?
283 名前:281 [04/07/28 00:16] >>282 レポートそのものは、AccessDBからフィールドを引っ張ってますが、 表題の部分に、任意の文字列を入れたいのです。 別フォームでその文字列を変数に格納して、レポートに表示したい という訳です。
284 名前:デフォルトの名無しさん mailto:sage [04/07/28 00:42] 標準入力・出力するコマンドラインで動くアプリケーションがあるんだけど、 それとVB.NETでやりとりすることできるかな? (ひらたく言えばVB.NETってパイプ使える?)
285 名前:デフォルトの名無しさん [04/07/28 00:49] 標準入出力とのやりとりならできる。
286 名前:デフォルトの名無しさん mailto:sage [04/07/28 01:10] >>285 そうですか。できれば方法も教えてもらえると助かるのですが。 「〜〜というクラスを使え」とか・・・
287 名前:デフォルトの名無しさん mailto:sage [04/07/28 01:11] ヘルプで検索すれば出ると思うが… ProcessクラスとかProcessStartInfoとか参照。
288 名前:デフォルトの名無しさん mailto:sage [04/07/28 01:13] >>287 ありがとうございます。 そこまで教えてもらえればあとはググるなりMSDN使うなりしてなんとかしてきます。
289 名前:デフォルトの名無しさん mailto:sage [04/07/28 01:59] >>287 解決しました。ありがとうございます
290 名前:デフォルトの名無しさん mailto:sage [04/07/28 02:30] >>281 スマン 遅くなりマスタ 表題って言うことは1枚目のレポートヘッダと解釈していいのかね? 仮にSection1にText1というテキストボックスがあったとして Dim cr As New CrystalReport1 Dim t As CrystalDecisions.CrystalReports.Engine.TextObject t = CType(cr.Section1.ReportObjects.Item("Text1"), CrystalDecisions.CrystalReports.Engine.TextObject) t.Text = "123" cr.ExportToDisk(CrystalDecisions.[Shared].ExportFormatType.PortableDocFormat, "c:\123.pdf") '結果を出力 パラメータフィールドを使う方法とか色々やり方はあると思うので 自分はまるまるXMLから取得する方法でやってます
291 名前:デフォルトの名無しさん mailto:sage [04/07/28 13:44] FlexGrid.Netを使ってるのですが ある日を境に デザイン時は最新バージョン 実行時は古いバージョン をロードしてしまいます VSの再インストールやFlexGridの最インスコなどいろいろやってみたんですが・・・ binフォルダ内と標準インストール先のフォルダには最新バージョンの 2.1.20032.135 が 実行時にはなぜか一つ前の 2.1.20032.124 が読み込まれています
292 名前:デフォルトの名無しさん mailto:sage [04/07/28 14:21] Windowsアプリケーションから、 任意のsqlスクリプト(ファイル名.sql)を読み込んで 実行させることって出来ますか?
293 名前:291 mailto:sage [04/07/28 16:05] C:\WINNT\ASSEMBLY の情報を書き換えたらうまくいきました
294 名前:デフォルトの名無しさん [04/07/29 17:20] VB.NETで他フォームを参照するにはどうすればよいのでしょうか? 例えば、form1とform2があったとき、 form1からform2のコントロールを直接取得したいのです。 BorlandC++のときは、実行中のフォームのインスタンスを参照できた のですが、VB.NETではそれが見あたりません・・・ よいアイディアがありましたら教えて頂けると 大変助かります。よろしくお願いいたします。
295 名前:デフォルトの名無しさん [04/07/29 17:47] >>294 Form1の中に、 Form2 form2 = new Form2(); form2.hoge = "Hage"; って感じでどうですか?
296 名前:デフォルトの名無しさん mailto:sage [04/07/29 17:49] 上のほうでVB.NETでブラウザ作ってた人はどうなったんだろう? なにげに気になってたんだがw
297 名前:デフォルトの名無しさん [04/07/29 18:22] どこかにVB.NET(2003)を使って、シリアルポートからデータを受信して表示するプログラムの ソースが公開されていませんでしょうか? CreateFile とか ReadFile とかのAPIを使うっていうのはわかっているのですが、 公開されているのを見ると Public Declare Function WriteFile Lib "kernel32" Alias "WriteFile" _ (ByVal hFile As Integer, lpBuffer As Any, _ とか書いてあって(As AnyはVB.NETでは使えない) そのままだと使えないんです。 VB6のMSCommを使えばいいのかもしれませんが、APIを使いたいのです。
298 名前:デフォルトの名無しさん mailto:sage [04/07/29 18:27] >>297 なぜVBにこだわる?
299 名前:デフォルトの名無しさん [04/07/29 18:31] >>298 つっか、APIたたくならC#でもVBでもC++でも答えは似たようなもんでしょ。 あと、VBが一番安いんだっけか?
300 名前:デフォルトの名無しさん [04/07/29 18:43] >>297 その程度のことでいちいち人に聞いてるレベルじゃ、 まず間違いなくファイルI/O系のAPI使いこなすなんて無理だと思う。 ほかのスレでこんなの見つけたけど、これなんか使えるのでは? www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=b06e30f9-1301-4cc6-ac14-dfe325097c69 >>294 久々に「別フォームの……」キター
301 名前:デフォルトの名無しさん mailto:sage [04/07/29 18:45] As Any って As Object で代用できなかったっけ?
302 名前:デフォルトの名無しさん mailto:sage [04/07/29 19:54] どこかにVB.netのゲームサンプルがある場所ってありますでしょうか?
303 名前:294 mailto:sage [04/07/30 00:48] >>295 ありがとうございます。 でもそれだと実行中のフォームじゃなくなってしまうので ダメなんですよね・・・
304 名前:デフォルトの名無しさん mailto:sage [04/07/30 01:34] >>303 インスタンスの扱いが理解できてるなら、Form2のインスタンス作成時に 参照をとっておけばどうにでもなることくらい分かりそうなもんだが…
305 名前:デフォルトの名無しさん mailto:sage [04/07/30 02:07] Form2ってどの段階で表示(生成)されるの? もしかして別EXE?
306 名前:デフォルトの名無しさん mailto:sage [04/07/31 00:04] >>302 難しいなぁ。どんなゲームがいいんだ?
307 名前:デフォルトの名無しさん mailto:sage [04/07/31 03:51] フォームロードイヴェントのときにそのアプリのプロセスIDを取得するのはどうやるのでしょうか?
308 名前:デフォルトの名無しさん mailto:sage [04/07/31 04:59] Velocityのようなテンプレートエンジンってないの? フリーの。
309 名前:デフォルトの名無しさん mailto:sage [04/07/31 08:47] >>307 フォームロードのときというのに深い意味があるのか? ただ単にプロセスIDのとり方が分からんだけとか?
310 名前:デフォルトの名無しさん [04/07/31 13:27] Math.Cos(90 / 180 * 3.1415) を実行すると 4.63267948799578E-05 という数値になります。 0または0に近い数値にしたいのですが、どうすればいいのでしょうか? 90の部分は0〜360度の中で変動、0度=1、90度=0、180度=-1、270度=0という結果を出したいのですが・・。 同様にMath.Sinでも変な数値にorz
311 名前:デフォルトの名無しさん mailto:sage [04/07/31 13:46] >>310 小数点以下3桁くらいで四捨五入しろ
312 名前:デフォルトの名無しさん mailto:sage [04/07/31 13:48] >>310 π = 3.1415 としているのが原因
313 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:05] >>311-312 返答ありがとうございます。 311の通りにしたら数値が0になったので、桁数が多すぎると表示がおかしくなる・・・でいいのかな。
314 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:14] >>313 違う違う、有効数字の考え方を勉強して来なさい。
315 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:15] いや、むしろ10万桁ぐらいまで
316 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:20] もしかして 4.63267948799578E-05 の意味分かってないとか?
317 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:25] >>316 いや、それを変数に入れて計算したら、 4.63267948799578が数値として考えられたのか、ただの回転がとんでもないことにナターヨorz
318 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:25] つまり π = 3.1415 のときに 0.0000463267948799578 ってことだから、 π = 3.141592653589793 くらいまで取ればもっと0に近づく
319 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:28] いや、浮動小数点数だから「変な数値」になることにはかわりないか?
320 名前:デフォルトの名無しさん mailto:sage [04/07/31 15:19] Perlユーザーには基本を知らない人間が多いのは知ってるし 自分も最初はそうだったから人の事は言えないが、 実際にそういう場面に出くわすと疲れるな。 今、基本情報処理の試験受付してるぞ。 基礎を身につける意味で、受験&勉強してみたらどうだ?
321 名前:デフォルトの名無しさん mailto:sage [04/07/31 15:29] すまん、スレ誤爆した。orz
322 名前:デフォルトの名無しさん mailto:sage [04/07/31 19:35] >>308 ない
323 名前:4.63267948799578E-05 [04/07/31 22:05] スマソ、やっぱ根本的なプログラムミスですたorz とりあえず立体モデルの回転をさせようと思っています。 member.nifty.ne.jp/Mukai/3d.htm ここの3番までをしようと思っているんですが、2番目の『初期状態】は Dim A()() as Double = {{1.0 .0.0, 0.0},{0.0, 1.0, 0.0},{0.0, 0.0, 1.0}} でいいのでしょうか? そのあとの『M = A×M』はVB.netで表すとどうなるのか、そもそも『M』の値が分かりません・・・。 分かる方がいれば教えてください。 (ちなみにゆとり教育云々で数学の教科書には回転行列のことなんてませぬorz)
324 名前:デフォルトの名無しさん mailto:sage [04/07/31 22:41] それはプログラミングって言うより線型代数の問題じゃないのか
325 名前:デフォルトの名無しさん mailto:sage [04/07/31 23:16] >>323 ちゃんと読んでないのでちょっと良くわからないけど, 3番の M は 2番で言う A のことではないかな? M が機体の 前上右ベクトルなんだと思う. なので,M の初期値は,2番での Aの初期値とかでいいでしょう. M = A × M は,普通の3行3列の行列演算. 行列演算がわからないなら,自分で調べるか, もう一度ここで泣くかしなさい.
326 名前:4.63267948799578E-05 [04/07/31 23:43] >>325 前者了解しますた。 一番肝心なのは後者のほうですね・・・検索しても分かりませんでした、分かる方助言をお願いしますorz M[0][0]はA[0][0]とM[0][0]からM[2][2]をかけて足したもの? もうさっぱりです(´-ω-`;)
327 名前:デフォルトの名無しさん mailto:sage [04/07/31 23:52] 3次元関連の入門書読め。 ゆとり教育って…行列の掛け算も載ってないの? まあ、なんでも教科書に載ってると思う方が間違ってるともいえるが。
328 名前:デフォルトの名無しさん mailto:sage [04/08/01 00:12] >>327 僕も指数表現とか行列演算は,プログラム作るために勉強したので, 326のいいきっかけになれば良いじゃん. このホームページには冒頭に3D関係の本に載ってないと書いてあるが, それでも,3DCGの基礎は知っとかんとこの先詰まるので, >3次元関連の入門書読め。 には賛成. >>326 これじゃだめ? ttp://shigihara.hp.infoseek.co.jp/mx13.htm ttp://www.matsusaka-u.ac.jp/~aihara/pukiwiki2/index.php?%A5%D9%A5%AF%A5%C8%A5%EB%A4%C8%B9%D4%CE%F3 ただし,プログラムでやるときは, T = A × M M = T みたいにやらないとだめだよ.
329 名前:4.63267948799578E-05 [04/08/01 00:17] >>327 DirectXの本が何冊かあるけど、どれも行列を使ったサンプルはなくSetRotation・・・。 DirectXはスレ違いだけどVBで作っているからcppのサンプルは使えないしでもうダメポ(つД`;) それと2*2の行列の計算すら載ってませんでした。。
330 名前:デフォルトの名無しさん mailto:sage [04/08/01 02:44] VBでエクセルをいろいろいじりたいんですが 参考になるサイトってありますか?
331 名前:4.63267948799578E-05 mailto:sage [04/08/01 02:50] >>330 ttp://www.bcap.co.jp/hanafusa/ ・・・orz
332 名前:4.63267948799578E-05 mailto:sage [04/08/01 03:28] Microsoft® Visual Basic® アプリケーションでは、Direct3DX ユーティリティ ライブラリによって提供される D3DXMatrixRotationX 関数、D3DXMatrixRotationY 関数、および D3DXMatrixRotationZ 関数を使って回転行列を作成する。 ここまで分かったけど、そこの見えない谷に阻まれてまs orz
333 名前:デフォルトの名無しさん mailto:sage [04/08/01 06:56] Rは登録商標だが、TMは何?
334 名前:デフォルトの名無しさん mailto:sage [04/08/01 07:43] >>332 Direct3D で回転させるの? 自分で行列演算して回転させるの? とくに実現方法にこだわらないなら,いろいろ調べてできそうなやつで やれば良いんだけどね. そもそも 3D→2D を Direct3D でやるか 自分で写像するか.. Direct3D のほうが速いと思うけど. >>333 トレードマークでしょ.って,これは誤爆なのかな?
335 名前:デフォルトの名無しさん mailto:sage [04/08/01 08:00] トレードマークって?
336 名前:デフォルトの名無しさん mailto:sage [04/08/01 08:17] TM - Trade Mark 商標? R - Registered (Trade Mark) 登録商標?
337 名前:デフォルトの名無しさん mailto:sage [04/08/01 09:27] どっちがえらいの?
338 名前:デフォルトの名無しさん mailto:sage [04/08/01 10:36] たぶん 登録商標 のほうがえろいと思うけど. ここじゃなくて,法律関係の掲示板に行ったほうがいいと思うよ.
339 名前:4.63267948799578E-05 mailto:sage [04/08/01 14:04] 結局使い方が分からない罠orz >>334 方位・角度・ロールを正確に表示しつつ回転させると、やはり回転行列を使わないと・・・。 少しロールさせた状態で機首を上げると、角度と方位が変わるとともにロールもする。 この表現にもう一ヶ月近く悩まされてますorz
340 名前:デフォルトの名無しさん mailto:sage [04/08/01 22:09] >>339 じゃ >>323 のホームページにある3番のJavaプログラムみたいなものが VB でできればいいの? それくらいなら協力できるかも.
341 名前:4.63267948799578E-05 mailto:sage [04/08/01 22:36] >>340 まったくもってその通りです、できる範囲でいいので協力お願いしますorz 数学板ではなぜか叩かれるし、ここでは反応が薄いし・・・回転行列は以前何かあったのかな・・・。
342 名前:デフォルトの名無しさん mailto:sage [04/08/01 22:56] はっきり言って無理だと思われ。 他人に甘えてる態度が見え見え。 とても自分で努力しているようには見えない。 きっと数学板で叩かれてきたってのもそういう部分なんじゃないの? 基本を疎かにして上辺だけ習得しようって考えているなら、ずっと習得はできないよ。
343 名前:4.63267948799578E-05 mailto:sage [04/08/01 23:16] >>342 去年同じようなことをFlash板で言われますた。。 努力しろ!って言われても検索するところはしたし、 自分でこれかな?って思ったのは作って砕けてるしでどうしろと(;´Д`) 行列は学校で習っているものと思われているけど、最近は習わないところが多々あるので基本とか言わないでくださいorz
344 名前:デフォルトの名無しさん mailto:sage [04/08/01 23:22] >343 その辺が根本から間違ってるんだって。 「どうしろと」じゃねーよ、自分で考えるんだよ。 学校でなんでもかんでも教えてもらえると思うな、自分で調べるんだよ。 なんでも誰かに教えてもらうと考えるな。 だから叩かれるんだよ。
345 名前:4.63267948799578E-05 mailto:sage [04/08/01 23:27] >>343 > 「どうしろと」じゃねーよ、自分で考えるんだよ。 > 学校でなんでもかんでも教えてもらえると思うな、自分で調べるんだよ。 > 努力しろ!って言われても検索するところはしたし、 > 自分でこれかな?って思ったのは作って砕けてるしでどうしろと(;´Д`) 頼むから飛ばして読まないでorz てか釣りだったらスマソ
346 名前:4.63267948799578E-05 mailto:sage [04/08/01 23:28] こっちでも矛先間違えたorz
347 名前:340 mailto:sage [04/08/01 23:30] >>341 こんなのを作ってみた. 新しいプロジェクトにはっつけてみ. Dim LocX As Double = 150 Dim LocY As Double = 0 Dim LocZ As Double = 100 Dim M(,) As Double = {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}} Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress Dim Fx, Fy, Fz As Single ' 鼻先 Dim Bx, By, Bz As Single ' おしり Dim Lx, Ly, Lz As Single ' 左翼端 Dim Rx, Ry, Rz As Single ' 右翼端 Dim Tx, Ty, Tz As Single ' 尾翼 Dim gr As Graphics = MyBase.CreateGraphics If e.KeyChar = "f" Then ' 前進 LocX += 10 * M(2, 0) : LocY += 10 * M(2, 1) : LocZ += 10 * M(2, 2) Else Dim A(2, 2) As Double Dim T(2, 2) As Double If e.KeyChar = "r" Then ' 右を向く(ラダーというか自転) Dim th As Double = 22.5 * Math.PI / 180 Dim R(,) As Double = {{Math.Cos(-th), 0, -Math.Sin(-th)}, {0, 1, 0}, {Math.Sin(-th), 0, Math.Cos(-th)}} A = R End If If e.KeyChar = "u" Then ' 上を向く Dim th As Double = 5 * Math.PI / 180 Dim R(,) As Double = {{1, 0, 0}, {0, Math.Cos(-th), Math.Sin(-th)}, {0, -Math.Sin(-th), Math.Cos(-th)}} A = R End If つづく
348 名前:340 mailto:sage [04/08/01 23:30] T(0, 0) = A(0, 0) * M(0, 0) + A(0, 1) * M(1, 0) + A(0, 2) * M(2, 0) T(0, 1) = A(0, 0) * M(0, 1) + A(0, 1) * M(1, 1) + A(0, 2) * M(2, 1) T(0, 2) = A(0, 0) * M(0, 2) + A(0, 1) * M(1, 2) + A(0, 2) * M(2, 2) T(1, 0) = A(1, 0) * M(0, 0) + A(1, 1) * M(1, 0) + A(1, 2) * M(2, 0) T(1, 1) = A(1, 0) * M(0, 1) + A(1, 1) * M(1, 1) + A(1, 2) * M(2, 1) T(1, 2) = A(1, 0) * M(0, 2) + A(1, 1) * M(1, 2) + A(1, 2) * M(2, 2) T(2, 0) = A(2, 0) * M(0, 0) + A(2, 1) * M(1, 0) + A(2, 2) * M(2, 0) T(2, 1) = A(2, 0) * M(0, 1) + A(2, 1) * M(1, 1) + A(2, 2) * M(2, 1) T(2, 2) = A(2, 0) * M(0, 2) + A(2, 1) * M(1, 2) + A(2, 2) * M(2, 2) M = T End If Fx = LocX + 30 * M(2, 0) : Fy = LocY + 30 * M(2, 1) : Fz = LocZ + 30 * M(2, 2) Bx = -10 * M(2, 0) : By = -10 * M(2, 1) : Bz = -10 * M(2, 2) Lx = LocX - 20 * M(0, 0) + Bx : Ly = LocY - 20 * M(0, 1) + By : Lz = LocZ - 20 * M(0, 2) + Bz Rx = LocX + 20 * M(0, 0) + Bx : Ry = LocY + 20 * M(0, 1) + By : Rz = LocZ + 20 * M(0, 2) + Bz Tx = LocX + 10 * M(1, 0) + Bx : Ty = LocY + 10 * M(1, 1) + By : Tz = LocZ + 10 * M(1, 2) + Bz Bx += LocX : By += LocY : Bz += LocZ gr.Clear(MyBase.BackColor) gr.DrawLine(Pens.Black, Fx, Fz, Bx, Bz) gr.DrawLine(Pens.Black, Fx, Fz, Rx, Rz) gr.DrawLine(Pens.Black, Fx, Fz, Lx, Lz) gr.DrawLine(Pens.Black, Rx, Rz, Lx, Lz) gr.DrawLine(Pens.Blue, Tx, Tz, Bx, Bz) gr.DrawLine(Pens.Blue, Tx, Tz, CSng(LocX), CSng(LocZ)) End Sub
349 名前:4.63267948799578E-05 mailto:sage [04/08/01 23:33] 本当にありがとうございますorz 後ほど結果を書きますね(知らないのがいっぱい(;´Д`))
350 名前:デフォルトの名無しさん mailto:sage [04/08/01 23:34] >345 ちゃんと読んでるよ。 じゃあ聞くが、検索以外には何をした? 書籍を調べたか? 図書館に行ったか? 検索をしたのは1ヶ月で何回だ? これかな?と思って作ったものはどこがなぜダメなのか考えたのか? それに対して色々と検証はしてみたのか? 検証をしたならその結果をまとめてあるか? 基本を学べ。 人生の基本を。 調べ方の基本を。
351 名前:340 mailto:sage [04/08/01 23:37] >>341 >数学板ではなぜか叩かれるし、 叩かれて当然なくらい簡単なことを聞いてるからだと思うよ. まぁ,ここから勉強すればいいじゃん. で,上のプログラムだが,行列の掛け算は展開して書いてある. もう間違えようがないよな.なっ? キーボードの f で前進, r で右向く, u で上向く. 左向く,下向く,ロール は自分でトライして.
352 名前:4.63267948799578E-05 mailto:sage [04/08/01 23:41] >>350 本は3冊買いますた、プログラムをやってる先生にも聞きました(でも昔やったが忘れた、とorz)。 検索はほぼ毎日してます、ダメな部分を変えていったら地獄の一丁目にたどり着きますた。。 一度書いてやってから組んでいるからノートの半分以上は埋まったし・・・基本と言われることはしてます。 受験勉強せずになにしてんだか(;´Д`)
353 名前:340 mailto:sage [04/08/01 23:46] >>349 ちょっとバグってた. 予定してないキーを押すと機体が消える. とりあえず↓のようにしとけば回避できる. × Dim A(2, 2) As Double ○ Dim A(,) As Double = {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}
354 名前:4.63267948799578E-05 mailto:sage [04/08/01 23:51] >>340 改めてありがとうございました。 これこそ基本だと言われることなのですが、 指定されたキー以外を押すと止まってしまう(そのあと何を押しても動かない)のはなぜなんでしょうか。 自分はselect case 〜でやっているので他のキーを押しても何も起こらないだけなのですが。
355 名前:4.63267948799578E-05 mailto:sage [04/08/01 23:52] >>353 って先に直してくれてましたね、度々ありがとうございます。
356 名前:デフォルトの名無しさん mailto:sage [04/08/01 23:52] VB.NETでaspxを書くときは サーバープログラムとHTML部分のどちらをうえに書くのがおすすめですか? <script runat=server> </script> ↑ 逆にしてもいいけどどちらがファイルをWindowsメモ帳で編集するときに楽か ↓ <html> </html>
357 名前:340 mailto:sage [04/08/02 00:01] >>355 実は右翼端と左翼端の座標も逆みたい. 想定座標系の裏返しに表示されてる. ちゅーことは,右回転しているようで実は左回転してた. よく検証せずに出してすまんね.
358 名前:4.63267948799578E-05 mailto:sage [04/08/02 00:07] 円周率はMath.PIでokだったのか・・・>>312 のはこのことを言ってたのかorz
359 名前:デフォルトの名無しさん mailto:sage [04/08/02 00:08] >>352 …お前は多分基本の意味を勘違いしてるだろ。 分からない事を基礎となってる部分から一つ一つ解決していけ。 まず行列の計算が分からない、理解できないんなら、 行列について勉強しろ。 それが出来たら3D関連の基礎的な本やサイトを見れば、 行列と言う物が3Dでどのように利用されるのか分かる。 プログラミングはその上で行う物だ。 お前はダメなところを変えていったというが、適当に式を変えてみたとか、 そんなんだろ? なぜおかしいかを論理的に考えて間違ってる場所を探したか? なんとなく適当に買えながら動かしてちゃんと動くのを待つ ではいつまでたってもちゃんと動かないぞ。
360 名前:340 mailto:sage [04/08/02 00:11] 2度目の修正. "r"押したときの R(,) の値 Dim R(,) As Double = {{Math.Cos(-th), 0, Math.Sin(-th)}, {0, 1, 0}, {-Math.Sin(-th), 0, Math.Cos(-th)}} と,表示のとこ. gr.DrawLine(Pens.Black, Fz, Fx, Bz, Bx) gr.DrawLine(Pens.Brown, Fz, Fx, Rz, Rx) gr.DrawLine(Pens.Black, Fz, Fx, Lz, Lx) gr.DrawLine(Pens.Black, Rz, Rx, Lz, Lx) gr.DrawLine(Pens.Blue, Tz, Tx, Bz, Bx) gr.DrawLine(Pens.Blue, Tz, Tx, CSng(LocZ), CSng(LocX)) わかりやすいように右翼を茶色にしてみた. 内部では,x-z が水平でy軸が上になってる. 表示は,手抜きで,x-z 平面を グラフィクスの y-x にそのまま表示してる.
361 名前:デフォルトの名無しさん mailto:sage [04/08/02 00:11] >そんなんだろ? ああっと、勝手に決め付けてるようで悪いが、 お前の言動を見てるとそういう匂いがしたんだ。
362 名前:359=361 mailto:sage [04/08/02 00:13] あ、進めてるところに水をさす気はないので続けてくれ。
363 名前:340 mailto:sage [04/08/02 00:31] >>362 はい. あなたの言うこともわかるのですが,この辺にしといてあげましょうよ. これからいろいろ学んで立派になってくれることを祈りつつ. で,ぼくはもう眠いので,ロールのところを書いて寝ます. If e.KeyChar = "p" Then ' 右ロール Dim th As Double = 10 * Math.PI / 180 Dim R(,) As Double = {{Math.Cos(-th), Math.Sin(-th), 0}, {-Math.Sin(-th), Math.Cos(-th), 0}, {0, 0, 1}} A = R End If おやすみなさい.
364 名前:4.63267948799578E-05 mailto:sage [04/08/02 00:53] >>340 色々手直し・追加ありがとうございます。 明日(今日)早いので帰ってきたらじっくり勉強させてもらいます。 >>361 分かってから振り返れば『そんなんだろ?』というレベルかもしれませんが、 検索するべき単語もハッキリ分からず模索している段階からみればそんな一言で片付けれるものじゃないっすorz 回転はおかしいけど悩みながら進行方向に動かしたり、直線だけどミサイルを飛ばしたりはできたんだけど・・・。 ほんと回転だけは悩まされましたorz
365 名前:デフォルトの名無しさん mailto:sage [04/08/02 01:38] 2次元の回転行列A= { cosΘ , -sinΘ } { sinΘ , cosΘ } これを3次元に展開すればX軸回転、Y軸回転、Z軸回転が作れる。 例えばX軸回転(YZ平面回転)の場合、B= { 1 , 0 , 0 } { 0 , cosΘ , -sinΘ } { 0 , sinΘ , cosΘ } となる。 それぞれ式に直すと x'=x y'=y*cos(r)-z*sin(r) z'=y*sin(r)+z*cos(r) となる。 Y軸回転、Z軸回転は自分で考えてみそ。
366 名前:デフォルトの名無しさん mailto:sage [04/08/02 06:11] >364 >検索するべき単語もハッキリ分からず模索している段階からみれば そこだよ。 基本がわかってないからそうなる。 あと、他人の意見を素直に受け入れられないなら、人に聞いても何も得られないよ。
367 名前:デフォルトの名無しさん mailto:sage [04/08/02 17:46] すいません。質問させていただきますー Console.WriteLine(result) をつかって、resultの中身を確認したいんですが、 どうやって確認したらいいんでしょうか。Msgbox()のようにダイアログが出る わけでもないようなんですが。。。よろしくお願いします。
368 名前:デフォルトの名無しさん mailto:sage [04/08/02 18:12] 出力 ウインドウを確認
369 名前:367 mailto:sage [04/08/02 18:34] >>368 お答えありがとうございます! なにやら超基本的なことを聞いてしまった みたいですいません。助かりました。
370 名前:デフォルトの名無しさん mailto:sage [04/08/02 22:19] 何となく、ConsoleとDebugとかTraceを混同しているような気がしないでもない。
371 名前:4.63267948799578E-05 mailto:sage [04/08/02 22:27] >>365 ありがとうございます。 野暮用(宿題)が増えたのでこっちに集中することはできませんが、 >>340 さんのおかげで突破口ができたのでこれや調べたのを参照しつつ早く理解できるようにがんばります。 >>366 全く知らない範囲を基本と言わないでとorz 言われたことは既にやってるし、調べて試すと言う基本的なことも想像されてる以上にやってます。 ただ論理的っていう部分だけは除きますが・・・ (・・・分からない部分が論理的に考えることができたら、そりゃ理解できてるじゃんとか突っ込みたくなる(;´Д`)) 大変申し訳ないのですが、レスのたびにどっかの文で人の努力を簡単に踏みにじってる印象を受けたので反論しています。 質問側で甘えてしまっている立場でほんと申し訳ないのですが、 > あと、他人の意見を素直に受け入れられないなら、人に聞いても何も得られないよ。 を返すとしたら ・他人を理解していなければ、その人が意見を素直に受け入れることは無理 全部を理解しろと言うわけではないけど、この大変さだけでも理解して欲しかったですorz 大変な中で叩かれると相当きつい。。 立場を弁えてないレス失礼しました。
372 名前:デフォルトの名無しさん mailto:sage [04/08/02 22:32] >371 >>359 ,>>361 に同意 何が基本かもわからないのは物事の本質を論理的に考えられないから
373 名前:デフォルトの名無しさん mailto:sage [04/08/02 22:34] ×「分からない部分が論理的に考えることができたら」 ○「自分が何を分かっていないかを論理的に考える」 この時点で間違いだらけ。
374 名前:デフォルトの名無しさん mailto:sage [04/08/02 22:39] >・他人を理解していなければ、その人が意見を素直に受け入れることは無理 ここは2chだ。 理解するべきことは「誰の発言か」ではなく「どんな内容か」それだけだ。 他人を理解できないと意見を受け入れられないなら2chで聞く事自体が間違い。 匿名掲示板で名も素性も知らぬ他人を理解できると思っているならお前は大馬鹿。 目を覚ませ。 今から考えを改めれば5年後にはまともな人間になれるかもしれないぞ。
375 名前:デフォルトの名無しさん mailto:sage [04/08/02 22:53] 偉そうな事を言ったのは謝る。 どうもお前みたいな甘えた奴見てるとイライラするんだ。 社会に出る前に論理的思考を身につけとけ。 俺はお前を不幸にしたいわけじゃない。 お前の周囲の人間が不幸になってしまうのを憂いているだけだ。 論理的思考を身に付けろ。 そうすればほんの少しでもみんな幸せになれる。
376 名前:デフォルトの名無しさん mailto:sage [04/08/03 08:42] 社会に出て本当に必要なのは 論理的思考力なんかではなく、他人に優しくできる心である と、言ってみる。
377 名前:デフォルトの名無しさん mailto:sage [04/08/03 09:46] 社会は大部分の論理的思考の足りない奴らで構成されている。 論理的に問題解決しようとする俺らのほうが ちょっとおかしい人間 なんだよ。 ところで Boolean型 って何のためにあるんだ? いや、まじめなはなし。
378 名前:デフォルトの名無しさん mailto:sage [04/08/03 09:55] イエス・ノーをはっきりさせたいアメリカ人のため
379 名前:デフォルトの名無しさん mailto:sage [04/08/03 10:32] >>377 コンピーターの基本動作は何かを考える
380 名前:デフォルトの名無しさん mailto:sage [04/08/03 10:45] >>379 コンピュータの基本動作は理解しているつもりだが。 いや、そう言う意味じゃなくて、昔の BASIC には なかってでしょ。 CPUが特別に持っている型でもないし、 技術的に何の意味があるのかという ちょっとした疑問。 >>378 みたいな答えはまぁ、納得するしかないね。
381 名前:デフォルトの名無しさん mailto:sage [04/08/03 11:00] >>380 CPUにはフラグレジスタがある。 昔のBASICでBoolean型がなかったのは、ON/OFFだけで 変数1個分のメモリ使うのはもったいなかったからじゃないかな。 数値のままならbit数分だけ使えるし。 まあ、文中で論理式という形ではあったと言えるかも。 X=X+(K$="4")-(K$="6") この話題は、こっちのスレのほうがよかったか。 MicrosoftBASIC総合談話室 pc5.2ch.net/test/read.cgi/tech/1089798174/
382 名前:デフォルトの名無しさん mailto:sage [04/08/03 15:13] 例えばaという通信の受信オブジェクトとF1、F2、F3の3つのフォームがあります。 受信したデータの処理で、3つのフォームそれぞれにaを置けば全く問題は無いのですが、 aを1つだけにして、受信イベント時に受信データを見て、 それぞれのフォームに振り分けたいとしたら、 どんな方法が一般的なのでしょうか?
383 名前:デフォルトの名無しさん mailto:sage [04/08/03 16:15] >>382 普通にイベントを起こせばいいんじゃない?
384 名前:デフォルトの名無しさん mailto:sage [04/08/03 17:35] 前々から気になってたことなんですが 新規にフォームモジュールを作成するときに Option Explicit On などを自動的に付加することって出来ますか? プロジェクトのプロパティではOnになってるんですが 反映されないんです・・・
385 名前:デフォルトの名無しさん mailto:sage [04/08/03 19:03] >>384 Option Explicit On って変数宣言の必要になるやつだよね。 ぼくは、普通に常に On になってるけど。 ツールのオプションのプロジェクトのとこだよね? ふしぎー。
386 名前:デフォルトの名無しさん mailto:sage [04/08/03 19:17] >>381 >CPUにはフラグレジスタがある。 まぁ、確かに。 レジスタの退避命令使えば一応メモリ上にも置けるしね。 >まあ、文中で論理式という形ではあったと言えるかも。 んと、それは論理演算子のことで、Boolean型ではないですね。 論理演算子の演算結果が、昔は 整数型 だったのが VB では Boolean型 になってる。 >この話題は、こっちのスレのほうがよかったか。 >MicrosoftBASIC総合談話室 あっ、ごめんごめん。 みんな暇そうだったから、疑問に思ってたことを言ってみただけ。 (えっ? 暇じゃないって? もっと ごめんごめん。)
387 名前:デフォルトの名無しさん mailto:sage [04/08/03 19:27] >377 規格統一じゃない? プログラマによって、TRUEを1とするか-1とするか分かれたりするし。
388 名前:デフォルトの名無しさん mailto:sage [04/08/03 22:56] >>386 >んと、それは論理演算子のことで、 間違えた。「比較演算子」だった。 >>387 BASICによって、比較演算の結果が 1 のやつと -1 のやつが あったからね。 C言語だと 1 だね。 そろそろ 次の相談者登場の予感。
389 名前:デフォルトの名無しさん mailto:sage [04/08/03 23:55] 次の相談です。 ちょと過去ログにみつからなかったんですが、バルーンチップって どうやって出したらいいんでしょうか。 ステータスバーのところに「バックグラウンド処理が終わりました」 みたいなのを吹き出しで表示したいので、だから ツールチップみたいにオートで出る奴じゃなくて、任意のタイミングで 任意の場所に出せるツールチップが欲しいのです。 InputMan.netは「バルーンチップ付きコントロール」はあるけど バルーンチップ単独のコントロールはなさそうだし。 昔は論理式の「真が-1」を利用して、テンキー移動の処理を K$=INKEY$ X=X-(K$="4")*(X>0)+(K$="6")*(X<39) みたいに1行で書いたりしたな。久しぶりに書いてみたから上のは 合ってるかどうか知らないけど。
390 名前:デフォルトの名無しさん mailto:sage [04/08/03 23:55] ただ単にあいまい性をなくして厳密にするためのものでしょ。 コンピュータではなく人間にとって分かりやすくするためのもの。 バグを出しにくくするためというのも含んでる。
391 名前:デフォルトの名無しさん mailto:sage [04/08/04 00:21] >>385 多分>>384 は設定の意味を勘違いしてるだけと思われ。 プロジェクトの設定は、ソースに明示してないときのデフォルトを設定するもので、 ソースに自動出力させるものではない。
392 名前:384 mailto:sage [04/08/04 01:26] >>385 >>391 ありがとうございます VB6やOfficeのVBAのように行頭に追加されるものだと思ってました<m(__)m>
393 名前:デフォルトの名無しさん mailto:sage [04/08/04 16:25] >>389 >ステータスバーのところに「バックグラウンド処理が終わりました」 >みたいなのを吹き出しで表示したいので、 バルーンチップって使ったことがないから、今ヘルプとか 見たけど良くわからん。 ぼくなら、メッセージを表示して [OK] ボタンを押すか 時間がくると自分で .Close するフォームを作っちゃうけど、 そう言うのじゃだめかな?
394 名前:デフォルトの名無しさん mailto:sage [04/08/04 17:47] >>389 バルーンのようなフォームを作ってみましたが、 コードはともかくデザインもあるし、どうやって渡せばいいものか。
395 名前:デフォルトの名無しさん [04/08/04 18:26] VB.NET2003 + ADO.NETで初歩的質問です。 実行時のパスにおいてあるMDB(Access2000)に接続したいんですけど ウィザード系使うと接続文字列が固定になっちゃいますよね サーバーで動いてるような大きなDBならまだいいけど 環境変わったりDBのパスが変わるような、要は接続先を実行時に決定するような仕組みをつくるには もうクラスの宣言から全てコードで記述するしかないっつーか、それが基本なんでしょうか? DB関係のGUIは一切放棄でつか? ADOに比べてものすごい多くのコード書かなきゃいけないんですけど・・・ めんどくさい・・・ なんかよい省力化方法ってありますか?
396 名前:デフォルトの名無しさん mailto:sage [04/08/04 20:48] >>395 接続文字列だけ書き換えればいいじゃん
397 名前:395 mailto:sage [04/08/04 21:04] >>396 Connectionオブジェクト以下につながる下層オブジェクト(AdaptorとかDatasetとかDatagridとか)は フォームの初期化イベント内で”つながり”が設定されているらしく LoadイベントでConnectionの接続文字列を書き換えると、その後エラーで止まってしまいます。 うまいことやる方法はあるんでしょうか・・・ ”つながり”の初期化(Refresh?)の仕方とかあったら教えて下さいませm(_ _)m
398 名前:デフォルトの名無しさん mailto:sage [04/08/04 21:16] それって「フォーム デザイナで生成されたコード」を書き換えにいってないか?
399 名前:395 mailto:sage [04/08/04 21:58] いやいやいやw さすがにそこまでおまぬけさんじゃないです('A`) フォームのLoadイベントで接続文字列を書き換えた後(初期値はウィザードで作った値になっています)、 しなきゃいけない処理とか、こうすれば下層オブジェクトまでの”つながり”に反映できるってのがあればご教示下さい〜
400 名前:新人 [04/08/04 22:21] あの、すみません。 現在社会人一年目のペーペーで、研修を終えてOJTに入ったばかりです。 環境はVB.net + Javascriptというものらしいです。(まだよくわかってません) そこで与えられた作業なのですが、現在、 ボタンを押すとテーブルに一行を追加する、という処理で詰まっています。 <script type="text/javascript"> <!-- function add_row() { table = document.getElementById('tab1'); new_row = table.insertRow(table.rows.length); new_row.insertCell(0).appendChild(document.createTextNode('')); new_row.insertCell(1).appendChild(document.createTextNode('b')); new_row.insertCell(2).appendChild(document.createTextNode('c')); new_row.insertCell(3).appendChild(document.createTextNode('d')); new_row.insertCell(4).appendChild(document.createTextNode('e')); new_row.insertCell(5).appendChild(document.createTextNode('f')); new_row.insertCell(6).appendChild(document.createTextNode('g')); } // --> </script> という感じで書いて、行を追加するのですが、 createTextNode('') のままでは、ただ文字列を表示するだけなんです。 これをテキストボックスにするやり方が、もうずっと考えているんですけど、 どうしても分かりません。 周りに聞ける人間が全然いなくて、メソッドの使い方もまだ全然です。 どうか、どなたか救っていただけませんでしょうか?
401 名前:デフォルトの名無しさん mailto:sage [04/08/04 22:28] >>399 その後のエラーとやらの内容をちゃんと書け。 でも簡単にやる場合は普通はダイナミックプロパティを使うと思うが。
402 名前:デフォルトの名無しさん mailto:sage [04/08/05 03:51] 学校でVB6.0を使っているのですが 課題を家でやるためにspoke premiumを買っても問題ないでしょうか?
403 名前:デフォルトの名無しさん mailto:sage [04/08/05 08:52] >>402 だめ VB6スレにいけ
404 名前:デフォルトの名無しさん [04/08/05 10:11] >>400 周りに聞けるものがいない会社ってどんな会社だよw
405 名前:395 mailto:sage [04/08/05 10:45] 解決しました・・・・orz りっぱなおまぬけさんですた・・・・orz というか、Loadイベントで接続文字列書き換えるだけで下層も勝手に追随してくれるんですねー リフレッシュも何もいらないとは、便利というかブラックボックスというか・・・ 結局昨日はなんでエラーになったかというと ソースと同じパスにmdb置いてたせいだったんでした orz VB.NETはexeがソース直下のbinフォルダにできるんでした・・・ VB6に慣れすぎてます(涙 お答えくださった方、ごめんなさいでした >>401 ダイナミックプロパティは”実行時のパス”を設定できないのでこの場合使えませんでした。 でもoracleとかの固定DBには有効な手段ですね!サンクスです。
406 名前:デフォルトの名無しさん [04/08/05 14:06] WebBrowserで新しいウィンドウを開かせても親ウィンドウを 閉じたら子ウィンドウも閉じてしまう現象を解決する方法は? 6.0なら何も指定しなくてもいけたんだが…。 With New Form1 .WebBrowser1.RegisterAsBrowser = True e.ppDisp = .WebBrowser1.Application .Visible = True End With
407 名前:デフォルトの名無しさん [04/08/05 14:45] DataGridで特定の列だけセルにフォーカスを受けないようにする方法はないでしょうか? Tabキーを押していくとその列だけとばされるようなイメージで。
408 名前:デフォルトの名無しさん mailto:sage [04/08/05 18:14] 今、VB.net 2002を使用していますが 2003にアップするとどのような魅力がありますか? どうせアップするならVIsual Studio.net 2003 Professionalの ステップアップグレード買おうかと迷っとります。 けど2005もベータ版が発表されましたしもう少し様子見た方が良いですかね?
409 名前:デフォルトの名無しさん [04/08/05 22:52] Visual Studio .NET theSpoke Premium Version 2003 って、ラーニングエディションみたいなもんですか?
410 名前:409 [04/08/05 22:55] すいません、スレ違いでした 逝ってきます・・・
411 名前:デフォルトの名無しさん mailto:sage [04/08/06 07:02] >>407 Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged 〜 End Sub で該当の列だったら DataGrid1.CurrentCell = New DataGridCell(RowNumber, 次のColumnNumber)
412 名前:407 mailto:sage [04/08/06 08:59] >>411 早速教えていただきありがとうございます。 これ最後の列だったりするときは勝手に次の行に行きますかね? ってとりあえず試してみます。 助かりました。
413 名前:407 mailto:sage [04/08/06 09:53] うまく行きそうです。 質問続きで申し訳ないのですがDataGridを継承させてコントロール(myDataGrid)を作っているのですが myDataGrid.TableStyle.Addメソッドが呼ばれたことをmyDataGrid側で知る方法はないでしょうか?
414 名前:デフォルトの名無しさん mailto:sage [04/08/06 14:28] 数字を漢字にしてくれる関数はなんでしょうか? Ary(1)="一" Ary(2)="二" Ary(3)="三" のように自作で数字漢字変換するしかないのでしょうか
415 名前:デフォルトの名無しさん [04/08/06 14:37] >>414 そんな関数がライブラリで用意されてると期待すること自体が不思議。
416 名前:デフォルトの名無しさん mailto:sage [04/08/06 15:17] >>414 ChangeNumericToJapaneseNumericChar()
417 名前:デフォルトの名無しさん mailto:sage [04/08/06 15:34] >>414 漢字コードは順番に並んでるんだから、変換テーブルは必要ないと思うけど。
418 名前:414 mailto:sage [04/08/06 15:47] みなさま了解です。
419 名前:デフォルトの名無しさん mailto:sage [04/08/06 16:28] VB6で「アイコンなし、×ボタンだけなんだけどサイズ変更可能なダイアログ」 というのを実現するのに、BorderStyle=固定ダイアログ、Icon=なしにして、Form_Loadで SetWindowLong WS_THICKFRAME して実現してますた。 これをVB.NETでもやりたいんですが、APIなしでできますか?それとも同じ方法が ベストですか? あとついでに、フォームの右下にサイズ変更ツマミ(斜線をドラッグできるやつ)って 任意に出せないですか?
420 名前:デフォルトの名無しさん mailto:sage [04/08/06 21:06] >>419 書いてあること、フォームのプロパティウィンドウでいろいろ試すだけで 一分で全部できた。 正直、こういう人ってどういう根性してるのかねえ?不思議。 精神分析の対象だわホント。
421 名前:デフォルトの名無しさん [04/08/06 21:20] >>420 うぜぇよ。消えな。
422 名前:デフォルトの名無しさん mailto:sage [04/08/06 22:28] 漢字を数字か。昔仕事でそんなコードを書いたな。 百五と百十五と百二十五とか腹立つんだよねぇ
423 名前:デフォルトの名無しさん mailto:sage [04/08/06 23:48] >422 一、十、百、千、一万とかも嫌だね。
424 名前:デフォルトの名無しさん mailto:sage [04/08/07 00:10] 客が壱、弐、参も使いたいとかローマ数字T、U、Vとかも使いたいとか言ってきたら大変だな
425 名前:e [04/08/07 01:06] ADO.NETでデザイナを使わないで、プログラミングする方法の解説とか ごぞんじないでしょうか。 webで検索してみても、こういう結構基本的なもので終わってるのが 多いもんで。。。 www.atmarkit.co.jp/fdotnet/basics/adonet_index/index.html
426 名前:デフォルトの名無しさん mailto:sage [04/08/07 01:08] 白黒2色のマスク画像みたいなやつの黒の部分から Regionオブジェクトを作る方法ってないでしょうか?
427 名前:DARK mailto:sage [04/08/07 01:32] NoCD化パッチ作りたいのですが…教えて下さいm(_ _)m
428 名前:デフォルトの名無しさん mailto:sage [04/08/07 02:03] >>425 黄色いADO.NETの本とかは? でかくて高いヤツ まぁあれも基本しか書いてないけど
429 名前:デフォルトの名無しさん mailto:sage [04/08/07 07:25] やっぱ標準モジュールがあると便利だね。 C#が嫌になってきた。
430 名前:デフォルトの名無しさん mailto:sage [04/08/07 13:14] c#が嫌なのは同意するが(VBに比べると、可読性が悪くてイライラしてくる) 標準モジュールなんてイラネ。 読みにくいキャメル形式の命名法もイラネ。
431 名前:ぷぷぷっ mailto:sage [04/08/07 17:11] .NET(2002 or 2003)で作成したアプリを動かしたときに、 そのアプリはどの.NET Frameworkのバージョン(1.0 or 1.1)で動いているか 把握することはできないんかいのぉ。。。 そのアプリのフッター部分に表示とかしたいのじゃが。
432 名前:デフォルトの名無しさん mailto:sage [04/08/07 19:20] ちょっと違うが、VB.NETで作ったプログラムで、フォームに そのプログラムをコンパイルした日時を埋め込みたいのですが なんか方法ありますか?
433 名前:デフォルトの名無しさん mailto:sage [04/08/07 22:58] 標準モジュール…ってあんたw
434 名前:419 mailto:sage [04/08/08 02:31] >>420 出来なかったんですが、やり方教えてもらえませんか?
435 名前:419 mailto:sage [04/08/08 03:06] >>434 当たり前なので書き忘れましたが、SizableToolWindowはなしでお願いします。 あれはダイアログボックスではなくプロパティインスペクタを作るための もので、タイトルバーの高さが異なるものなので。
436 名前:419 mailto:sage [04/08/08 03:12] >>435 あ、でもSizableToolWindowでプロパティをいじるだけでタイトルバーの 高さを通常のウィンドウと揃える方法があればそれでオーケーです。 連続カキコですみません。
437 名前:デフォルトの名無しさん mailto:sage [04/08/08 14:16] 自分でコントロール作った方が早くない?
438 名前:デフォルトの名無しさん mailto:sage [04/08/08 21:52] >>435 重症だわこの人。。「当たり前なので書き忘れましたが、」だと。 なんで最近こういう「自分以外はみんなエスパー」と思ってるとしか思えない 病的な奴が多いんだろう。 420 :デフォルトの名無しさん :04/08/06 21:06 >>419 書いてあること、フォームのプロパティウィンドウでいろいろ試すだけで 一分で全部できた。 書いてあること、 書いてあること、 書いてあること、
439 名前:デフォルトの名無しさん mailto:sage [04/08/08 21:54] >>438 自尊心を守るのに必死なんだよ。放っておいてやれ
440 名前:デフォルトの名無しさん mailto:sage [04/08/08 23:52] 変なヤツは放置しろよおまえら
441 名前:デフォルトの名無しさん mailto:sage [04/08/09 02:19] >>432 .exe のタイムスタンプで代用じゃダメか?
442 名前:デフォルトの名無しさん [04/08/09 13:22] >>441 あ、そうか。コロンブスの卵ですね。さんく
443 名前:デフォルトの名無しさん mailto:sage [04/08/10 01:59] みなさ〜ん。自分は今日からプログラミング始めようとしている高校生です。 なんかいろいろ調べるとVBやらVB.NETやらC++やらC#やらいろいろな言語があることを知りました。 難易度的にはVBが一番簡単らしくVB.NETはVBの進化で少し複雑になっているとか。 C++やC#は難しいとか。。 自分としてはVBを覚えその次にVB.NETんでもってC++やC#やろうかなって思っていたのですが どうやらVBとC#はまったく関連性がないとか。。。 フランス語覚えたから中国語得意になるってわけでないのと同じですかね? 将来は本格的なプログラマになりたいので、やっぱりC言語からはじめてC#やC++を学んだ方が よいのでしょうかね?
444 名前:デフォルトの名無しさん mailto:sage [04/08/10 02:30] ここはVB.NETの技術的な質問回答をする場所なので どの言語が自分に適してるかを答えることはできないと思う プログラマー板の方に行った方が適切な回答が得られると思われ
445 名前:デフォルトの名無しさん mailto:sage [04/08/10 04:39] >>444サンクス ペコ
446 名前:デフォルトの名無しさん [04/08/10 09:48] 私だけ?何年もVBに触っているのに、 いまだにTreeViewの使い方が分からない・・・
447 名前:デフォルトの名無しさん mailto:sage [04/08/10 12:10] >>446 いや・・俺もこないだ初めて知った人なのだが、それは質問なのか?
448 名前:デフォルトの名無しさん mailto:sage [04/08/10 19:34] 質問です。 フォームに、ボタン2つと、グループボックスを配置します。ボタン2を グループボックスに乗っけます。そして、 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If Me.GroupBox1.Enabled = True Then Me.GroupBox1.Enabled = False ElseIf Me.GroupBox1.Enabled = False Then Me.GroupBox1.Enabled = True End If End Sub とすると、グループボックスとボタン2をまとめて有効/無効を切り替え 出来るのですが、 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.Button2.Enabled = False End Sub として、ボタン2をクリックしてボタン2を無効にすると、ボタン1をクリックしても グループボックスとボタン2をまとめて有効/無効を切り替え出来なくなります。 何故でしょう(;´Д`)
449 名前:最凶VB厨房 mailto:sage [04/08/10 20:21] 2箇所のEnd Subの前に MessageBox.Show("Button2.Enabledは" & Button2.Enabled.ToString()) をつけてやっとーみ。
450 名前:デフォルトの名無しさん mailto:sage [04/08/10 21:13] レスどうもです。 ひょっとしてEnabled = Falseになっているコントロールは、 グループボックスと連動してEnabled = Trueに出来ないのでしょうか? そうならちょっと不便(;´Д`)
451 名前:最凶VB厨房 mailto:sage [04/08/10 21:18] ボタン2が有効か無効かは この場合グループボックスとボタン2の論理積(And)となる。 つまりはグループボックスのEnabledを操作すればいいだけ。
452 名前:デフォルトの名無しさん mailto:sage [04/08/10 21:42] >>450 もう解が得られたようだけど、 >ひょっとしてEnabled = Falseになっているコントロールは、 >グループボックスと連動してEnabled = Trueに出来ないのでしょうか? もしそういう感じの仕様になっていると、そのうち 「グループボックスやフォームなどのコンテナに入っているコントロールは、 必ずコンテナと連動してEnable = True になってしまうのでしょうか。 そうならかなり不便」 ということになると思う。
453 名前:450 mailto:sage [04/08/10 22:10] グループボックス=ON ボタン2=ON ←真 グループボックス=OFF ボタン2=OFF ←真 グループボックス=ON ボタン2=OFF ←偽 グループボックス=OFF ボタン2=ON ←偽 弱い頭で考えますた。間違ってます?
454 名前:最凶VB厨房 mailto:sage [04/08/10 22:14] 知らんかったら論理積で検索して確かめな。
455 名前:デフォルトの名無しさん mailto:sage [04/08/10 22:20] >>450 ええと、 ・ウィンドウ(フォーム)が Enable = False の場合、中のコントロールは (Enableの値に関わらず) 全て無効 ・グループボックスが Enable = False の場合、中のコントロールは (Enableの値に関わらず) 全て無効 ってことですよ。コンテナ側が無効だと、中身は無効。 喪前の学校が休みのときは、どのクラスも休み。 喪前のクラスが休みのときには、元気な奴も病気の奴も皆休み。 学校もクラスも休みじゃないときには、病気 (Enable = False) の奴だけが休み
456 名前:450 mailto:sage [04/08/10 22:44] 理解できました! 最凶VB厨房殿、デフォルトの名無しさん殿ありがとうでした(`・ω・´)
457 名前:デフォルトの名無しさん mailto:sage [04/08/11 00:02] だれか突っ込んでやれよ。 >>450 >If Me.GroupBox1.Enabled = True Then > Me.GroupBox1.Enabled = False >ElseIf Me.GroupBox1.Enabled = False Then > Me.GroupBox1.Enabled = True >End If このコードはあまりにひどいだろ。 Me.GroupBox1.Enabled = Not Me.GroupBox1.Enabled か、せめて If Me.GroupBox1.Enabled Then Me.GroupBox1.Enabled = False Else Me.GroupBox1.Enabled = True End If だろ、普通。
458 名前:デフォルトの名無しさん mailto:sage [04/08/11 02:23] >>457 スレ違いを承知で突っ込んでおくが、>>450 の書き方が決して「良くない」 とは言えない場合もあるよ。 Boolean 型が何バイトか考えてごらん。VB.netでは2バイト(=8ビット)だ。 BOOL型が存在しないCなどでは #define BOOL char #define TRUE 0x01 #define FALSE 0x00 とか書いてたりすることもある。こうなると BOOL HogeFlag=TRUE; if(HogeFlag==TRUE) wow(); // (1) if(HogeFlag) wow(); // (2) と、(1)と(2)では挙動が同じでも違いが良くわからなかったりする。 大勢の人間が寄ってたかって複数の言語で開発するような現場の場合、 よほど速度チューニングが求められない限り、冗長でもいいから明示的に 誰でも解るように書くのが暗黙の了解だったりする。 とにかく、自分の主観だけで他人のコードを「あまりにひどい」などと 言うのは良くないよ。
459 名前:458 mailto:sage [04/08/11 02:24] 2バイト=16Bitだ。。。_| ̄|○
460 名前:デフォルトの名無しさん mailto:sage [04/08/11 11:02] >>458 なんかフォーカスがずれたお人だね。そういうの「為にする議論」っていうんだよ。 「冗長でもいいから明示的に誰でも解るように」という要件は、 <.NETでは>Booleanという型が存在しそれを利用することで必要十分に満たされている。 Booleanってそもそも何だと思ってるの?(ついでに、Boolean=ワード、ってのは旧VBの仕様) 違う道具(C)の作法をそのまま適用して何になる。 一般論をしてるだけだって? 特殊なケースでの冗長なコードの効用を過剰に一般化してるだけじゃん。 そういうの「馬鹿の一つ覚え」とか「羹に懲りて膾を吹く」って言う。
461 名前:450 mailto:sage [04/08/11 11:53] >>457 大変勉強になりました。ただ、あなたがプログラムに関して、 私以上に知識を有してる事は十分理解出来ますが、それを必要以上に 誇示したり、「あまりにひどい」「馬鹿の一つ覚え」「羹に懲りて膾を吹く」 と言う発言は、一社会人の会話として私には『冗長』に思えてなりません。
462 名前:457 mailto:sage [04/08/11 12:16] >>461 私の 「あまりにひどい」 発言に批判があるようで、反省。。 なかったことにしてくれ。私がわるかった。 私が一番気になったのは、ElseIf で 成立しかしない条件を 判定しているところなんですよ。 個人的には、2つ目の例のほうがわかりやすいと思ってる。 他の処理を足せるしね。 >>460 は 私じゃないので知りません。
463 名前:457 mailto:sage [04/08/11 12:37] >>458 >とにかく、自分の主観だけで他人のコードを「あまりにひどい」などと >言うのは良くないよ。 そこは今反省中。 もちろん、(たぶん)意図通り正しく動くプログラムであることは すばらしいことだと思ってます。 その範囲内での発言のつもりだったのですが、そんなことは 全然伝わるわけも無かったと反省中です。ごめんね。 じゃぁこうしよう。 If Me.GroupBox1.Enabled = True Then Me.GroupBox1.Enabled = False Else Me.GroupBox1.Enabled = True End If これなら、私もそんなに気持ち悪くない。 って言うのも 主観 か、残念。
464 名前:デフォルトの名無しさん [04/08/11 14:13] asp.netの質問ってここでもよいですか?
465 名前:デフォルトの名無しさん [04/08/11 15:06] なぜか悪者にされているが>457は良い指摘だと思ったのは俺だけじゃないよな
466 名前:デフォルトの名無しさん mailto:sage [04/08/11 15:16] if a = true then b = false else b = true end if より a = not b のほうが断然いいよな。 値を反転してるって一目瞭然だし。
467 名前:デフォルトの名無しさん mailto:sage [04/08/11 20:18] >458 の詭弁もあるが指摘自体はただしいだろ。 じっさい俺もひどいコードと思ったし。 >450 は教え方が悪いと言ってんじゃないの?
468 名前:デフォルトの名無しさん mailto:sage [04/08/11 21:13] 漏れなんかは VB (.Net) は、「動けば良し」的センスで使ってナンボ、みたいな先入観があるので、 457的突っ込みは思いつきもしなかった。まぁあれは確かに正論だし親切だと思うけど。 ↑こう書くと荒れにくい。 ↓こう書いてはいけない >>457 どうせVBなんて厨坊言語なんだから、酷いコードでもちゃんと動きゃそれでいいんだよ。
469 名前:デフォルトの名無しさん mailto:sage [04/08/11 23:21] マウスカーソルを乗せると浮き上がって、 押すと凹むツールバーのようなものってVBでは出来ないのでしょうか? 例えばLive2chのツールバーや、Winnyの「ノード情報」等で使われているものです。 C++やDelphiで作られているようですが・・
470 名前:デフォルトの名無しさん mailto:sage [04/08/12 00:43] >>469 ToolBar.Appearance プロパティをFlatにすればできると思うけど・・・。
471 名前:デフォルトの名無しさん mailto:sage [04/08/12 03:24] >>470 ありがとう、出来そうです。
472 名前:デフォルトの名無しさん mailto:sage [04/08/12 16:21] >>468 このスレはそういうレベルなのか? VBってバカにされがちだけど結構ちゃんとできてる。 醜いコードでもとりあえず動くものを作るのは重要だけど それで終わらせるのも勿体無いと思う。 「こういう処理は こう書くときれい」とかも共有して行こうよ。
473 名前:デフォルトの名無しさん [04/08/12 18:15] テキストボックスに商品の値段を入力したときに、数値に3桁区切りの","を付けたいのですが 入力したとたんに桁区切りをする方法というのはあるのでしょうか? 別のフォームで入力して、表示する際に桁区切りにするのは出来たのですが、入力したそのフ ォームの中で桁区切りにする方法というのがどうしても判りません。
474 名前:デフォルトの名無しさん mailto:sage [04/08/12 18:37] >>473 人間はエスパーじゃないことを忘れないようにしよう。 「入力したとたんに」とは具体的にどういうこと? ひょっとして人に質問している自分自身が何がやりたいのか分ってないとか? (3n+1)桁の数字のキーが押されたタイミングで、ということ? あるいは、エンターキーが押されたタイミング? それとも、他のコントロールにフォーカスが移ったとき? 一番最初のなら、そんな腐れUIは考え直すべきだと思う。 後の2つなら、単にそういうコード書くだけだと思うけど。
475 名前:デフォルトの名無しさん mailto:sage [04/08/12 19:06] >>473 ひょっっっっとして、 Private Sub TextBox1_TextChanged(ByVal sender As System.Object, \ ByVal e As System.EventArgs) Handles TextBox1.TextChanged というイベントメソッド名が解らん、とかそーいうハナシか?
476 名前:デフォルトの名無しさん [04/08/12 19:14] >>466 b = not a
477 名前:デフォルトの名無しさん mailto:sage [04/08/12 19:51] Vd:J/A>Dxqr-RJ"~{Ro*
478 名前:コピペ [04/08/12 20:02] ファイル切り貼り処理を行うに当たって、既に同じ名前のファイルがあるとエラーになってしまいます。 その場合は上書きで処理したいのですが、どう書けばいいでしょうか? 現在以下のようなコードで切り貼り処理をしています。 'strOKU_FILE = 切取側ファイルパス 'strUKE_FILE = 貼付側ファイルパス Set FsoFile = fso.GetFile(strOKU_FILE) FsoFile.Move (strUKE_FILE)
479 名前:デフォルトの名無しさん mailto:sage [04/08/12 21:05] >>478 そんなもんここにレスしている間に調べがつくだろ。 横着野郎に今日を生きる資格はない。 こういう奴の書くコードってどっかのサンプルのツギハギなんだろうなきっと。 まあ、ヒントだけだすと、そんなことにわざわざFSOなんぞ使うな、 VBネイティブの機能を調べろ、ってことだな。
480 名前:デフォルトの名無しさん [04/08/12 21:38] >>479 あんた、やさしいな。
481 名前:デフォルトの名無しさん [04/08/12 22:13] >>479 名前欄・・・
482 名前:デフォルトの名無しさん mailto:sage [04/08/12 22:26] VBは確かに楽な言語だな。 VBで用意されているコンポーネントを使う分にはとても楽でいい。 ちょっと変な事を客から要求されるとかなり大変になるけど。 でも、VBに溺れたPGは最悪だな。 もうVB以外全然できない。 入門としてVBをやるのはいいが、そこからステップアップする気概が欲しいね。
483 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:02] >>473 電卓みたいに、入力できるのを最下桁に固定すると 簡単になるじょ。
484 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:03] >>482 .NET使ったこと無いだろ(w
485 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:07] >484 残念、逆。 .NETでVBに触れた。
486 名前:デフォルトの名無しさん [04/08/12 23:08] >>482 >入門としてVBをやるのはいいが、そこからステップアップする気概が欲しいね。 C言語のほうが使いやすい奴がVBはじめるのはステップダウンですか?
487 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:13] >>485 そっか・・・ 貴殿はVB6を見ると卒倒するんだろうな・・・
488 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:20] >486 そうは言わないよ。 VBだって優れた言語だ。 ただ、VBしかやっていないでいると、計算機の本質を考えずにプログラミングできてしまう。 それは>482で言った「ちょっと変な事」を実現するための想像力の欠如に繋がる。 結果として作られたレールの上しか走れないPGになる。 それはクリエイターとしては大きすぎる痛手だ。 >487 色んな言語やってるから大丈夫だと思う。 自分で設計するならオブジェクト指向なしに戻りたくはないが。
489 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:30] >>488 計算機の本質じゃなくて、Windowsプログラミングの本質でしょ。 何が本質かは主観の問題だろうけど、 SDKプログラミングだって「作られたレールの上」を走っていることに違いはない。
490 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:49] 結局自慢話か( ´,_ゝ`)
491 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:51] 「VBでアプリを作るのは非常に簡単。VBで『マトモな』アプリを組むのは非常に難しい」 VB4の頃からウチの会社に伝わっている格調高き名言でつ。 ドトネトになってからは更に加速したヨカン。
492 名前:デフォルトの名無しさん mailto:sage [04/08/12 23:53] >>488 まあ、言ってる事は分かるんだけど、VB.NETに関しちゃ、 JavaでもC#でも似たようなもんじゃないかな。Cとかなら別だけど。 計算機の本質と言うか、単にプログラミングということ自体の理解が足りないかな。 ついでに… 最悪なのはVBしか出来ないプログラマではなくて、VBすらできないプログラマだ… ってか、VB.NETが「ちゃんと」使えるなら大丈夫なんだけどね。
493 名前:483 mailto:sage [04/08/13 00:04] ひまだとVB議論のスレになるのだ。 >>473 こんな感じでいかがなものかな? Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress Dim v As Decimal If InStr("0123456789", e.KeyChar) > 0 Then v = Val(TextBox1.Text.Replace(",", "")) v = v * 10 + Val(e.KeyChar) TextBox1.Text = Format(v, "#,##0") TextBox1.SelectionStart = TextBox1.Text.Length End If e.Handled = True End Sub 若干手抜きかも知れないのでみんなで直してくれい。
494 名前:デフォルトの名無しさん mailto:sage [04/08/13 00:08] TextChangedだったかのイベントの方が良いと思うのだよ。
495 名前:483 mailto:sage [04/08/13 00:12] >>494 そうなの? 理由教えて。
496 名前:デフォルトの名無しさん mailto:sage [04/08/13 00:25] あ、ちょっと勘違いしてたかも… 言いたかったのは、メニューからペーストした場合とか、 要はキー入力以外でも書き換えられる可能性はあるという意味だったんだが…
497 名前:483 mailto:sage [04/08/13 00:43] >>496 なるほどね。ペーストされちゃダメだわ。 でも言われて TextChanged バージョンも作ってみたけど結構めんどうそうだよ。 Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged Dim c As Integer Dim v As Decimal c = TextBox2.SelectionStart If c > 0 Then If InStr("0123456789", TextBox2.Text.Substring(c - 1, 1)) = 0 Then TextBox2.Text = TextBox2.Text.Replace(TextBox2.Text.Substring(c - 1, 1), "") TextBox2.SelectionStart = c - 1 End If End If c = TextBox2.Text.Length - TextBox2.SelectionStart v = Val(TextBox2.Text.Replace(",", "")) TextBox2.Text = Format(v, "#,##0") If TextBox2.Text.Length - c > 0 Then TextBox2.SelectionStart = TextBox2.Text.Length - c End Sub まだちょっとおかしい。
498 名前:483 mailto:sage [04/08/13 00:57] もっと簡単になったよ。 Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox3.TextChanged Dim c As Integer Dim a As Integer Dim v As Decimal c = TextBox3.Text.Length - TextBox3.SelectionStart For a = 0 To TextBox3.Text.Length - 1 If InStr("0123456789", TextBox3.Text.Substring(a, 1)) > 0 Then v = v * 10 + Val(TextBox3.Text.Substring(a, 1)) End If Next TextBox3.Text = Format(v, "#,##0") If TextBox3.Text.Length - c > 0 Then TextBox3.SelectionStart = TextBox3.Text.Length - c End Sub こんなもんでいいのかな?
499 名前:デフォルトの名無しさん mailto:sage [04/08/13 00:57] だからそもそもそんな糞みたいなUI採用するのが間違っとる。 まあそれは置くとしても入力制限するんだからそもそもペーストに反応しちゃまずい。 そして入力制限さえ出来れば、後の処理はParseしてToStringするだけ。 TextBox1.Text = Integer.Parse(TextBox1.Text).ToString("###,###,###,###,###,###")
500 名前:483 mailto:sage [04/08/13 01:19] >>499 1行で出来るよってこと? そうだったのか、かっこ悪い漏れ orz 後は任せた。
501 名前:デフォルトの名無しさん [04/08/13 08:42] >>486 自分もそのクチだけど、けっこう新しい発見があるので損はしないよ。
502 名前:デフォルトの名無しさん [04/08/13 09:14] 偉そうなこと言う奴に限ってxxx 499 < 498
503 名前:デフォルトの名無しさん [04/08/13 17:12] >>502 まあおまえは何も出来ない無能なわけだが。
504 名前:デフォルトの名無しさん mailto:sage [04/08/13 18:29] OSの作り方教えてください。
505 名前:デフォルトの名無しさん mailto:sage [04/08/13 20:53] TabControlなのですが、ふと気付くとタブの順序が入れ替わって しまっていることがありるのですが、戻す方法は無いでしょうか・・・
506 名前:デフォルトの名無しさん mailto:sage [04/08/13 21:05] Tabつながりでふと思い出したこと TABキーを押したときの順番をGUIで変更することってきる?(ACCESSみたいに) .NET発表の際にその辺が強化されたって話を聞いてたんだけど
507 名前:デフォルトの名無しさん mailto:sage [04/08/13 22:29] >>502 まぁほっといてやれ。 もともとの質問出した >>473 が好きなほうを選ぶよ。
508 名前:デフォルトの名無しさん mailto:sage [04/08/13 22:45] >>505 デザイン時? 実行時? デザイン時なら、TabPageコレクションエディタの [↑] [↓] ボタンで 順番は変えられるよ。 実行時なら、もう少し詳しく現象を報告してちょ。
509 名前:デフォルトの名無しさん mailto:sage [04/08/13 22:46] >>506 旧VBって、できなかったの?
510 名前:デフォルトの名無しさん mailto:sage [04/08/13 22:50] >>508 デザイン時なら、TabPageコレクションエディタの [↑] [↓] ボタンで できました。ありがとうございます。 実行時に勝手に変わるということは無いと思うので、デザイン時だとは思うのですが そのプロパティはいじってないし、ふと気付くと変わってることがある状態で気持ち 悪いです(しく VB.NET(2002)
511 名前:506 mailto:sage [04/08/14 03:07] 自己解決 表示のタブオーダーでできました
512 名前:506 mailto:sage [04/08/14 03:12] >>509 もしかしたら有るのかもしれないけど 一個一個オサルのごとく数値変えてました(w
513 名前:デフォルトの名無しさん [04/08/14 16:15] VB.net 2003でWindowsコントロールライブラリの勉強をしています。 UserControl上にLabelとButtonを追加したユーザーコントロールに 新たなプロパティーを追加する場合について質問です。 <System.ComponentModel.Browsable(True)> _ Public Property tProp_Button() As Button Get Return Me.Button1 End Get Set(ByVal Value As Button) Me.Button1 = Value End Set End Property Buttonをデザイン上で変更出来るようにする為に上記のコードを記述すると、 そのユーザーコントロールを貼り付けた別のプロジェクトのデザイン上では、変更した値が表示される(例えば.textに"hoge"とするとボタンに"hoge"と表示される)のですが、 そのプロジェクトを実行させた場合、デザイン上で変更した値が反映されません。 ただ、Buttion1の宣言をpublicにして、コードで変更した値は、実行時には正常に反映されます。 コントロール自体をデザイン上で変更出来る様にするにはどのようにすればよいのでしょうか?
514 名前:デフォルトの名無しさん mailto:sage [04/08/14 16:23] なにがしたいのかさっぱり分からん。 デザイナ上でコントロール自身を変更するってどういうこと? っていうかコントロール自身を入れ替えてどうするの?
515 名前:デフォルトの名無しさん [04/08/14 19:42] >281さん、結果報告キボンヌ。 ぢつはおいらも、別フォームで入力したテキストの内容を、セクション1の テキストオブジェクトに表示したくて、Googleで調べたらここに辿り着いた っす。 で、そのテストに>290さんのをやってみました。 ビューワーを指定したFormを開くときに、>290さんのコードを実行している んですが、ビルドエラーなどは出ないんですけど、Text1は空っぽのままっす。 表示したビューワーをリロードしても表示されませんです。 >281 さん、上手くいったなら、報告をながいます。
516 名前:デフォルトの名無しさん mailto:sage [04/08/15 00:24] 質問なのですが、下のリンク先にある、Visual Basic .NET 2003というものは、Visual Studioを使った時のようなエディタがついているのでしょうか? ttp://www.microsoft.com/japan/msdn/vbasic/productinfo/default.asp 兄が、仕事で使っているというVB.NETでは、関数の名前を入力した後、ピリオドをうつと各プロパティとか命令が表示されて、かつそれぞれのヘルプまで表示されると聞いたのですが、その機能がほしいのです。
517 名前:デフォルトの名無しさん mailto:sage [04/08/15 00:37] >>514 それは君が無知で無恥だから。ユーザーコントロールって概念が理解できてないんだろ。 知らないなら黙ってろよ。 何をやりたいかは>>513 の文章で理解可能。俺は解決法は知らないけど。 ま、でもデザインモードでの変更がコードに反映されてないだけだろうから そんなに難しい問題じゃない気がするけど。 .NETではVB6みたいにウィザードがコード書いてくれないのか?
518 名前:デフォルトの名無しさん mailto:sage [04/08/15 00:55] >>517 うーむ、俺が無知なら正直すまんかったんだが… 見たところユーザコントロールに既に貼り付けてあるボタンのインスタンスを プロパティで入れ替えようとしてるんだよね? ってかいてて今やりたいことが多分分かった… 普通その場合は、プロパティを読込専用にするだろ? 入れ替えできるようなプロパティを書いてるから勘違いしてたよ。
519 名前:デフォルトの名無しさん mailto:sage [04/08/15 00:57] あと、VB.NETで貼り付けたコントロールの実体はプロパティなので、 普通はメンバをPublicにするだけでOK。 まあ、新たに追加してもいいことはいいんだけど…
520 名前:デフォルトの名無しさん mailto:sage [04/08/15 01:00] って何度もすまん、これじゃデザイナでできないって言ってるのか… まえに同じような事して単純に出来たような気がするんだけど…未確認。 生成されたコード上でのプロパティの設定順かな…?
521 名前:デフォルトの名無しさん mailto:sage [04/08/15 01:15] >>516 「VB.NET単体でVS.NETと同じようなテキストエディタが用意されているのか?」 と言う質問ですか? それなら答えはYesです
522 名前:デフォルトの名無しさん mailto:sage [04/08/15 01:29] >>517 俺には>>513 の意味はぱっと見て分からなかった。 誤解を招く表現がいくつかあるから、意味を取れなくても無知かどうかは分からんのじゃないの? 逆にやりたいことと>>513 の書き込みを見て違和感も感じないなら、その方が無知の可能性あり。
523 名前:513 [04/08/15 10:12] すみません。難解な文章を書いてしまって・・・もう一度、書いてみますと UserControl上にButton1を追加します。そして、Button1をデザイン上で設定出来るようにする為にプロパティを追加しました。(UserControlのコードを下記に記載) そして、ビルドを行いUserControl1.dllを生成し、Windowsアプリケーションの別プロジェクトを立ち上げ、アイテムの追加と削除より、UserControl1.dllを追加します。 Form上にUserControl1を貼り付け、プロパティを見ると、tButtonが出来ています。 そのtButtonプロパティの値を変更(Textに"hoge"をセットする)とデザイン上では、Button1の表示が"hoge"となります。 この状態で、実行してみると、Textに"hoge"とセットしていたはずなのに、"hoge"と表示されず"Button1"と表示されます。 このように、プロパティで設定した値が、実行時には全く反映されません。 どのようにすれば良いのでしょうか? >>519 Button1をPublicに変更して行って見ましたが、プロパティで設定した値は、デザイン上では 変わっているのですが、実行時には反映されませんでした。 Public Class UserControl1 Inherits System.Windows.Forms.UserControl #Region " Windows フォーム デザイナで生成されたコード " <System.ComponentModel.Browsable(True) _ , System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Content)> _ Public Property tButton() As Button Get Return Me.Button1 End Get Set(ByVal Value As Button) Me.Button1 = Value End Set End Property End Class
524 名前:516 mailto:sage [04/08/15 12:51] >>521 ありがとうございます。
525 名前:デフォルトの名無しさん mailto:sage [04/08/15 13:10] >>523 デザイナで生成されたコード内に、プロパティの変更コードは出てる?
526 名前:デフォルトの名無しさん mailto:sage [04/08/15 15:33] エクスプローラの詳細表示のような、横に複数項目表示できるリストボックスって VB.NET標準コントロールには無いの?
527 名前:526 mailto:sage [04/08/15 15:46] 悪い。自己解決した。ListViewだったね
528 名前:デフォルトの名無しさん [04/08/15 22:31] test
529 名前:デフォルトの名無しさん mailto:sage [04/08/16 09:04] >513 どっかで見た質問だなぁ。 どこで見たんだろ……まぁいいや。 そんときは >#Region " Windows フォーム デザイナで生成されたコード " この中で初期化してた、ってオチだったよ。
530 名前:デフォルトの名無しさん mailto:sage [04/08/16 09:35] >>513 そもそも、Button1のプロパティを全て公開する必要があるの? ユーザーコントロールにカプセル化するんだから、 必要なプロパティのみを公開すべきじゃない? Public Property ButtonText() As String Get Return Button1.Text End Get Set(ByVal Value As String) Button1.Text = Value End Set End Property 他にも必要なら、 ButtonBackColor とか、 ButtonFont という風に追加すればいいのでは?
531 名前:MSサンプルにバグ? [04/08/16 09:48] ja.gotdotnet.com/quickstart/howto/doc/Remoting/mainfeatures.aspx リモート処理の概要 参照によってオブジェクトを渡すのサンプルを実行すると、 セキュリティ制限のため、型 System.Runtime.Remoting.ObjRef にアクセスできません。 というエラーがでます。 クライアント、リモート オブジェクト、およびリモート ホスト アセンブリを異なるディレクトリに置いてサンプル実行しています。 対策ご存知の方、教えてください。
532 名前:自己解決 [04/08/16 18:43] >>531 自己解決。お騒がせ↓ www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconautomaticdeserializationinnetremoting.asp
533 名前:513 [04/08/16 23:08] >>529 確かに #Region " Windows フォーム デザイナで生成されたコード " の中は、デフォルトのままです。具体的には、どのように修正すれば宜しいのでしょうか? >>530 確かに、通常は必要と思われるプロパティのみ公開するのですが、 ボタンコントロールなどは、予めどれが必要と言われると、ほぼ全部使う可能性があると思われます。 その場合、数十にもなるプロパティを記述していくのは・・・という事と、 勉強も兼ねて、コントロール自体のプロパティを全て公開するにはどうするのだろうと、疑問に思い 質問した次第です。
534 名前:473 mailto:sage [04/08/17 14:52] 483さんの方法でやってみたらうまく行きました。ありがとうございます。
535 名前:デフォルトの名無しさん [04/08/19 17:03] APIを使いたいんですが 関数の形は void __stdcall fncSub(struct Info *p); って形になっていて Public Declare Sub fncSub Lib "HOGE.DLL" (ByRef p As Info) という風に宣言して fncSub(p) というように呼び出したんですが、 「'System.NullReferenceException' のハンドルされていない例外が test.exe で発生しました。 追加情報 : オブジェクト参照がオブジェクト インスタンスに設定されていません。」 て出るんです。 どのようにすれば正しく呼び出せるのでしょうか。 よろしくお願いします。
536 名前:デフォルトの名無しさん [04/08/19 17:28] ぬるり
537 名前:デフォルトの名無しさん [04/08/19 17:39] データアダプタで質問させてください。 まず前作業としてMDBでテーブル2つとビュー1つを作成します。 TABLE1 ID,FIELD_1,FIELD_2 (キーはID) TABLE2 ID,FIELD_A,FIELD_B (キーはID) VIEW1 ID,FIELD_1,FIELD_2,FIELD_A,FIELD_B さて、ここでVB.NETからVIEW1のデータアダプタを作りたいのですが、 構成ウィザードで警告が出てしまい、UPDATEとDELETEについてコマンドが作成されません。 アダプタ自体は作成できるのですが、削除が実行できないのです。 どうしたらいいんでしょうか・・・ TABLE1とTABLE2の2つアダプタを作って、それぞれに削除かけないとだめなのかしら・・・ VIEWで一発ですませたいんですが・・・
538 名前:デフォルトの名無しさん [04/08/19 17:49] あ、警告はちなみに一意に識別する列を作成できませんでした、とかいうやつです。 キーがあるから一意のはずだし、Accessからは削除できるのに・・・なぜ・・・
539 名前:デフォルトの名無しさん mailto:sage [04/08/19 20:23] >537-538 DBは何を使ってるんだよ。 DBから主キーを取得できてないって事。
540 名前:デフォルトの名無しさん mailto:sage [04/08/19 22:10] >>536 ガッ
541 名前:535 mailto:sage [04/08/19 22:37] 535です。 どうやらAPIのほうが悪かったようで void __stdcall fncSub(struct Info *p); は extern "C" HOGE_API void __stdcall fncSub(struct Info *p); という風にするのを忘れていたようです。 それで、後者のほうにDLLを修正したところ、今度は 「'System.ExecutionEngineException' のハンドルされていない例外が mscorlib.dll で発生しました。」 というエラーが発生しました。 これはどういうエラーなんでしょうか。 ググったりMSDNで調べたりしましたがいまいちわかりません。 分かる人がいましたら解決方法を教えてください。 よろしくお願いします。
542 名前:デフォルトの名無しさん mailto:sage [04/08/19 23:32] そのAPIって参照設定で読み込めたりしないのかと横着を考える
543 名前:541 mailto:age [04/08/20 00:50] >>541 参照設定をしようとしたら「有効なDLLじゃない」とエラーが出て 設定できませんでした。 ところで、使っている構造体の形は struct Info{ char A[10][1024]; char B[10][512]; char C[10][512]; }; って形になっているんですけど、VBでこの構造体を宣言するには Public Structure Info Dim A() As String Dim B() As String Dim C() As String End Structure でいいんでしょうか?教えてください。お願いします。
544 名前:デフォルトの名無しさん mailto:sage [04/08/20 08:15] >>543 だめ。構造体の宣言で、マーシャリングをきっちり指定する必要あり。 結構面倒だよ。
545 名前:デフォルトの名無しさん mailto:sage [04/08/20 17:04] .netであるクラスのプロパティを動的に参照するため wk1 = ClassA.PropA wk2 = ClassA.PropB ↓ wk1 = ClassA.xxxx("PropA") wk1 = ClassA.xxxx("PropB") のような感じにしたいのですが どのようにコーディングすればよいでしょう??? VB6時代だとProperties("PropA")のようなことができた気が…
546 名前:デフォルトの名無しさん mailto:sage [04/08/20 18:50] VB よくわかんないけど、例えばクラス ClassA の静的プロパティの場合 val = typeof(ClassA).GetProperty("PropA").GetValue(Nothing, Nothing) インスタンス a のプロパティの場合 val = GetType(a).GetProperty("PropA").GetValue(a, Nothing) とかかなあ・・・ Object が帰ってくるから、型変換は必要。 あとプロパティの一覧を得たいなら、System.Type.GetProperties メソッドが使えます。
547 名前:546 mailto:sage [04/08/20 18:50] >>546 スマソ。typeof は C# か。
548 名前:デフォルトの名無しさん mailto:sage [04/08/21 00:55] >>546-547 >GetType(a).GetProperty("PropA").GetValue(a, Nothing) 書き込み後なんとかGetType(a).GetProperty("PropA")のプロパティ情報列挙までは自己解決していましたが GetValue()の配列indexの使用法を間違ってました。 配列要素でないときはNothingなのかー! 激さんくすです!!
549 名前:デフォルトの名無しさん mailto:sage [04/08/21 17:42] データーグリッドを使って、データーを表示させた際に、グリッド右端をクリックすると 幅が自動で広がりますが、あれをプログラムでやらせることは出来るでしょうか?
550 名前:デフォルトの名無しさん [04/08/21 19:09] MSDEとVBの組み合わせで、"display_order"をintに設定して SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM pc_data ORDER BY display_order " とやると数値が大きなものが上にきてソートされます。 SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM pc_data ORDER BY display_order DESC" とやれば、小さい順にソートされるかな・・・とやってみたのですが、うまく動きません。何が間違っているのでしょうか?
551 名前:デフォルトの名無しさん mailto:sage [04/08/21 20:17] どうでもいいけど昇順と降順間違ってないか?
552 名前:デフォルトの名無しさん mailto:sage [04/08/21 22:05] いろいろ
553 名前:デフォルトの名無しさん mailto:sage [04/08/21 22:51] まだVB.NET初めて間もないのですが 以下のようなコードで「オブジェクト参照のインスタンスがありません」 とエラーが出てしまいます。 dim wrk_item() as string wrk_item(0) = "テキスト" ←ここでエラーが起こってます wrk_item(1) = "テスト" エラーの原因がわかりません。配列の要素数はあらかじめ決めておかないと だめなのでしょうか・・・
554 名前:デフォルトの名無しさん mailto:sage [04/08/21 23:17] dim wrk_item() as string = { "","" }
555 名前:デフォルトの名無しさん mailto:sage [04/08/21 23:19] 「配列を参照する事のできる」変数を定義しただけで、 「配列自体を作成」していない。変数の初期もしていない。 よって「配列を参照する事のできる」変数はNothingのままだから以下省略
556 名前:デフォルトの名無しさん mailto:sage [04/08/21 23:20] >>554 ありがとうございます やはり配列要素を決めておかないとだめみたいですね
557 名前:デフォルトの名無しさん mailto:sage [04/08/21 23:22] >>555 なるほど、そういうことでしたか・・・
558 名前:デフォルトの名無しさん mailto:sage [04/08/21 23:33] >553 ArrayListとかReDimとか使えば?
559 名前:デフォルトの名無しさん mailto:sage [04/08/22 10:21] ボクのPCはDELLのディメンションですがVB.NETをうごかしてもこわれないでしょうか?
560 名前:デフォルトの名無しさん mailto:sage [04/08/22 10:24] 残念ながらどこのPCでも壊れるときは壊れます。
561 名前:デフォルトの名無しさん mailto:sage [04/08/22 14:15] まあ、基本的にはArrayListあたり使うのが常套かな。
562 名前:デフォルトの名無しさん [04/08/22 18:56] >>559 VisualStudio.net入れると壊れる可能性が高いですね。
563 名前:デフォルトの名無しさん [04/08/23 09:19] >>550 ここは初心者の来る場所じゃありませんYOwwwwwwwwwwwwwwwwwwwwwwwww
564 名前:デフォルトの名無しさん mailto:sage [04/08/23 12:35] かといって高度な問題には解答が出来なかったりする
565 名前:デフォルトの名無しさん mailto:sage [04/08/23 13:57] 変数のタイプっの取得なんですが・・・ dim val dim s as String = "" val = s.GetTypeCode なら結果 String ですが dim val dim s as String val = s.GetTypeCode で初期化していないと当然 sは生成されていないので.GetTypeCodeが取れません。 初期化されてない変数タイプ取得ってどう記述しますか?
566 名前:565 mailto:sage [04/08/23 14:02] あ、ちなみに上記で GetTypeCode(s) で Object が返るのですが Dimで定義されている String を返したいのです・・・
567 名前:デフォルトの名無しさん [04/08/23 16:17] >>550 どう動かないのかというのが良くわからないが、データーグリッドの表示順を変えたいだけなら データセット名.Clear() SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM pc_data ORDER BY display_order" SqlDataAdapter1.Fill(データセット名, "car_data") としてやるだけでいけると桃割れ。
568 名前:デフォルトの名無しさん [04/08/23 16:34] って"car_data"ってなんだよ"pc_data"ねw。 ところで、ここの上のほうにあるデータグリッドの幅をデーターの長さに自動であわせて表示するっていうの を、どなたか出来る方いませんか?
569 名前:546 mailto:sage [04/08/23 16:44] >>565-566 無理。そもそも String が帰る時だって、値の型を取得しているだけで "変数" のタイプを取っているわけじゃないし。
570 名前:デフォルトの名無しさん mailto:sage [04/08/23 21:02] >>569 よくわからんが無理ってことはないんじゃないか? むしろインスタンスからしか型に関する情報を取れないなんてライブラリの方が 不条理な気がする。 www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vblr7/html/vaoprgettype.asp と www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemtypeclassgettypecodetopic.asp の組み合わせでいけるんじゃないだろうか。
571 名前:546 mailto:sage [04/08/23 23:56] >>570 レスされたので答えるけど、その手のメソッドでは無理。 IL にコンパイルされた後はそもそもローカル変数なんて タイプ情報にも存在しなくなっちゃうんで、 「ローカル変数が何型で宣言されたか」ってな情報を得るには、 ライブラリではなく言語自体によるサポートが必要。 値型 (value types - 単純型や structure) のものなら、 変数宣言と同時にインスタンスが作成されるので大丈夫だけど(と思う)
572 名前:デフォルトの名無しさん mailto:sage [04/08/24 00:37] >>565 ちなみになんでそんなことがしたいわけ? >>571 も言ってるけど、ライブラリじゃなくて言語仕様で そういう機能があるかどうかの問題になるね。
573 名前:565-566 mailto:sage [04/08/24 00:55] >>569 >値の型を取得しているだけで >"変数" のタイプを取っているわけじゃないし。 私も同様の認識だったのですがデバッグ中に… Dim s As String 直後のステップをブレーク、イミディエイトにて ?type.GetTypeCode(s) と実行した際、 「型 'String' の値を 'System.Type' に変換できません。」 といったメッセージが出たもので… 「あれ?エラーだけどここで'String'と認識するってことは…なにかしらの記述で変数のタイプも取得できるのか???」と…
574 名前:デフォルトの名無しさん mailto:sage [04/08/24 11:51] Form1で Dim f2 As Form2 f2.show() のようにしてForm2を表示して、そのForm2からForm1のTextbox1の内容を操作するにはどうしたらいいんですか? Form1からForm2の操作はできるんですが・・・その逆を行おうとするとエラーがでます。
575 名前:デフォルトの名無しさん mailto:sage [04/08/24 12:31] またVB6から進化できてない人間が迷い込んだな。。
576 名前:デフォルトの名無しさん [04/08/24 12:39] だから旧VBスレも合わせて、スレの>>1 のテンプレに愚問集作ってそこに 『別フォームの……』 を入れとくべきだろう。
577 名前:デフォルトの名無しさん [04/08/24 12:39] ここは初心者の来る場所じゃありませんYOwwwwwwwwwwwwwwwwwwwwwwwww
578 名前:デフォルトの名無しさん mailto:sage [04/08/24 12:50] そして、煽りも要りませんので・・・ とりあえず過去ログ読みまっしょ
579 名前:デフォルトの名無しさん [04/08/24 13:23] >>577 すいません 初心者はどこへ行けばよいですか?
580 名前:デフォルトの名無しさん mailto:sage [04/08/24 14:15] >>579 ここは2ちゃん。「うるせー馬鹿」が返しの挨拶。
581 名前:デフォルトの名無しさん mailto:sage [04/08/24 14:51] あの〜 いつぞやに、.NETの板が出来たと思っていたのですが、 あれは夢だったのでしょうか?
582 名前:デフォルトの名無しさん mailto:sage [04/08/24 15:55] >>581 ( ゚Д゚)氏ね
583 名前:デフォルトの名無しさん mailto:sage [04/08/24 19:46] >>581 >>224 のことか?
584 名前:デフォルトの名無しさん mailto:sage [04/08/24 21:39] >>577 初心者の来る掲示板だと思います。ぼくはね。 で、>>574 みたいなのは、ハンドル渡すとか、 Form1 のほうで面倒見てあげるとかして実現は可能だと思う。 いまだによくわからないのだけど、答えはどっちなん? 「コードを工夫して実現する」 or 「かっこ悪いからやってはいけない」
585 名前:デフォルトの名無しさん mailto:sage [04/08/24 21:51] >>574 解1. Form2 のプロパティにForm1 のインスタンスをセットしておいてForm2 の方からはそれを介して使う。 解2. アプリケーション実行中にForm1 のインスタンスが高々1個しか無いことが確かなら、Form1 クラスに 静的プロパティとして Form1 のインスタンスを保持して、Form1.ActiveForm のようにしていろんな所から使う。
586 名前:513 [04/08/24 22:32] 誰か解を求む・・・_| ̄|○
587 名前:デフォルトの名無しさん mailto:sage [04/08/24 22:35] >>586 問題のソース圧縮してどっかにうpすれば?
588 名前:デフォルトの名無しさん mailto:sage [04/08/24 22:47] >>585 例外的な場合を除けば、どっちも不正解だと思う。 そんなことをすればデータ隠蔽の効用が全部失われてしまう。 実際にデータを持つオブジェクトからハリボテ君(Form1)に イベントで通知するのが正解だろう。
589 名前:デフォルトの名無しさん mailto:sage [04/08/24 23:14] >そんなことをすればデータ隠蔽の効用が全部失われてしまう。 その判断の根拠を教えてくれ。 って>>584 の言ってる事の方が普通じゃないと思うが…
590 名前:デフォルトの名無しさん [04/08/24 23:40] ヴァカ降臨! www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=14151&forum=3
591 名前:駆け出し mailto:sage [04/08/24 23:49] ちょっと気持ちの悪いエラーが出ているので質問です。 Button1 と TextBox1を配したForm1のButton1のクリックイベントで Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim parameter As Integer Do While ( 処理続行条件 = True ) Application.DoEvents() parameter = CInt(TextBox1.Text) ・・・ 'parameter を使った処理 Loop End Sub というように、TextBox1からパラメータを入力してループ処理に反映させるコードを書き、 デバッグモードでビルドエラーも出ずに一見正常に動作する所まできました。 ところがDo While ループが回っている最中にForm1の右上の「X」ボタンをクリックして強制終了させると、 parameter = CInt(TextBox1.Text) の行のところで 'System.InvalidCastException' のハンドルされていない例外が microsoft.visualbasic.dll で発生しました。 追加情報 : 文字列 "" から型 'Integer' へのキャストが有効ではありません。 とエラーが出てしまいます。 なにぶんど素人なもので、どうしてエラーが出てるか良く分からないし、分からないと気持ち悪くて使えないし・・・ どなたか、エラーが出ている原因をご教授願えないでしょうか
592 名前:デフォルトの名無しさん mailto:sage [04/08/24 23:59] TextBox1.Textが""なんじゃないの?
593 名前:駆け出し mailto:sage [04/08/25 00:06] >>592 TextBox1の中身は(目で見る限り)整数が入っています。 実際、ループ中の強制終了さえしなければ妥当な結果が得られています。 アプリケーションの終了でTextBox1の中身がクリアされてしまう、と言われれば なんとなくそうかなあとは思うのですが、 素人考えでは、「X」ボタンのクリックが処理されるのは ”Application.DoEvents()” のところであって、だとするとわざわざその次の行まで処理が進んでエラーが出るのも おかしいんじゃないかと思ったり、悶々と悩んでいる次第です。
594 名前:デフォルトの名無しさん mailto:sage [04/08/25 00:31] うーん、細かい内部動作までは知らないんだけどさ… Application.DoEvents()でフォームが閉じるわな。 閉じ終わったら処理が戻ってくるわな。 Windowの破棄とかが具体的にどのタイミングなのかは知らないけど、 この時点でTextBoxが空になってるというのはありえそうな話だ。 まあ、ObjectDisposedExceptionになりそうな気もするけどそこはそれ。 勘違いしてそうだが、×ボタンクリック=アプリケーションその場で強制終了じゃないぞ。 ちゃんと最後まで処理は続く。
595 名前:デフォルトの名無しさん mailto:sage [04/08/25 00:34] DoeventsだからこそForm Unloadとその他のプログラムの動作がマルチタスクで動く。 ところでDoevents中に×ボタンを押したときにちゃんと終了するプログラムを書けるかどうか見守ってやる
596 名前:592 mailto:sage [04/08/25 00:37] 書こうと思ったら>>594 氏が書いてくれたか Application.DoEvents()で閉じる処理を拾った後(フォームが破棄されてる)に parameter = CInt(TextBox1.Text)を実行してるから空っぽ DoEventsはどの順序でイベントが発生したか追跡が難しいから あまり使うことはおすすめできない
597 名前:デフォルトの名無しさん mailto:sage [04/08/25 00:38] >>589 >>584 が正しいなんて全く言ってないけど。。 「データ隠蔽の効用が失われる」は正しい言い回しじゃないが、 要するに>>585 のようにしたのでは、たとえばフォームならフォーム上のコントロールの 制御の責任者とそのタイミングの明確さが失われるってことだ。 テレビに例えれば、ケーブルで繋がってるのなら映像がどっから流れてきているかは ケーブルを追っていけば自明だが、「パブリックな」電波だったら映像がどっから来ているか 追跡するのは大変だよ。 よく知ったかクン(俺もその一人だが。。)が「UIとロジックを分離する」 なんて知った風なこといってるでしょ?要するにそれだよ。
598 名前:デフォルトの名無しさん mailto:sage [04/08/25 00:41] ちゃんとフラグ管理やらEnable False やら工夫すればDoevents使いまくりでとても軽くて快適なアプリができるぞ
599 名前:デフォルトの名無しさん mailto:sage [04/08/25 00:52] スレッド使えるようになったのにわざわざDoEventsなんていう 面倒で危ない橋を渡る理由が浮かばない。 マルチスレッドがよほど難しいならともかく、 直接UIいじらない単純なバックグラウンド処理なら屁みたいなもんなのに。
600 名前:駆け出し mailto:sage [04/08/25 00:54] レスくれたみなさん、ありがとうございます。 どうも Application DoEvents() の処理のタイミングについて誤解があったようですね。 ちょっくら関連ドキュメントなぞ当たって勉強してみます。 VBは奥が深いと言うか何と言うか、やればやるほど 過去に書いた見掛けだけ正常に動くコードのインチキさ加減が露になってくる・・・
601 名前:デフォルトの名無しさん mailto:sage [04/08/25 01:02] まあ、EnabledをFalseにするとかでもはや別スレッドでやるのと 同じくらい流れが明確なのであれば、そんなに危険があるわけではないが、 >>599 の言ってるとおり、それがスレッドでやるより特別に簡単てわけじゃない。 単発処理自体が重かったり、常にDoEventsを行う事を考えるくらいなら、 むしろ別スレッドの方が簡単確実だ。
602 名前:デフォルトの名無しさん mailto:sage [04/08/25 07:45] どんな.NETアプリでもあちこちにDoevents挿入しとかないと他のアプリが重くなっちゃうというのが.NETアプリを使ってるときの体験法則 VB.NETアプリが動作中にタスクバーにある他のアプリをクリックしてアクティブにするときに重さを感じる
603 名前:デフォルトの名無しさん mailto:sage [04/08/25 08:14] >>602 DoEventsの意味がわかってない予感。。 ついでにプリエンプティブって意味もわかってない予感。。 しかし、これをプログラマの世界もオーディオみたいにプラシーボに 騙される人が出るほどレベルが低下していると見るべきか、それだけ 層があつくなったと見るべきか。
604 名前:デフォルトの名無しさん mailto:sage [04/08/25 09:03] >586 VB6の時はPropertyBagオブジェクト使ってたが、.NETだと違うみたいだ。 MSDNでPropertyBag調べて見れ。 .NETではどうすればいいかわかる。
605 名前:774.sln [04/08/25 10:14] 質問です。 Windows2000で組んだアプリケーションが、Windows2000では起動するんですが WindowsMeで起動しないんです。 デバッガで調べたら 「アセンブリファイル Microsoft.VisualBasic.Compatibility が見つかりません」 と出ているんですが、これはどういうことなんでしょうか? 環境は Windows2000 / Microsoft .net Framework v1.1 WindowsMe / Microsoft .net Framework v1.1 です。よろしくお願いします。
606 名前:774.sln mailto:sage [04/08/25 11:03] すみません解決しました。 WindowsMeには「Microsoft.VisualBasic.Compatibility」がインストールされないらしく 「参照設定」で「ローカルコピー」をTrueにしたら起動しました。 スレ汚しすみませんでした。
607 名前:デフォルトの名無しさん mailto:sage [04/08/25 13:37] >>602 ( ゚Д゚)ポカーン
608 名前:デフォルトの名無しさん mailto:sage [04/08/25 15:54] すいません。わたしマイクロソフトの社員ですが実は602の言うとおりです・・・
609 名前:デフォルトの名無しさん mailto:sage [04/08/25 17:23] プロパティウインドウでGUI入力できるプロパティはどのように作成したらよいのでしょう? たとえばBackColorのプロパティ等のような プロパティ値の▼押下でプロパティ設定用の画面から入力できるようなものを作成したいのですが・・・
610 名前:デフォルトの名無しさん [04/08/25 17:50] VB.NETでCORBAって使えますか?
611 名前:デフォルトの名無しさん [04/08/25 17:50] とりあえず練習用にVisualBasic.netを買ってみたんですが、DB400に接続しようとしてODBC接続 接続しようとすると、このバージョンのVSでは無理だよヴォケ!ってウィザードの最中にいわれてしま います。 普通のVisualStudio.netなら大丈夫なのでしょうか?それとも、エンタープライズ版を買わないとダメな のでしょうか?
612 名前:デフォルトの名無しさん mailto:sage [04/08/25 18:05] >>608 そこらにDoeventsを入れないといけないプログラム記述は マイクロソフトで推奨されてるのですか?
613 名前:デフォルトの名無しさん mailto:sage [04/08/25 18:10] .NETの実行速度を上げるために 1行のステートメントが終ったらすぐに次の行のステートメントを実行する仕様になってます。 そのためたとえループでなくてもマルチタスクさせたい場合(たとえネットするぐらいでも)は制御のあそび(すきま)を作ってほしいです。 Doeventsを使ってないプログラムのマルチスレッドは余計負荷になります。 公では言ってませんが感のいい方は気づいていたみたいです。
614 名前:デフォルトの名無しさん mailto:sage [04/08/25 18:19] >>612 このスレで書かれてる Doevents 推奨はほぼデタラメですが、 RPC や Out of Process COM オブジェクトの呼び出し (一部のSHホゲホゲ系 API も含む) などで 内部的に「隠れたウィンドウ」が生成されるようなスレッドは、非UIスレッドだからといって長時間ブロック して処理を行うと DDE ブロードキャストを阻害し、シェル( Explorer) の動作を重くします。
615 名前:デフォルトの名無しさん mailto:sage [04/08/25 18:21] 推奨とは言いたいが言えない企業の悩み
616 名前:デフォルトの名無しさん mailto:sage [04/08/25 18:23] >>614 追加。例えば Win32 の Sleep API の注意 www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpdllpro/html/_win32_sleep.asp なんかは、.Net でスレッドを作成する場合にも同じく適用されます。 (.Net の場合には AppDomain 間をまたがるメソッドの呼び出しでも隠しウィンドウが生成されると思います)
617 名前:デフォルトの名無しさん mailto:sage [04/08/25 18:29] 実行速度が早いとみせかけるためにはしょうがないのだよ
618 名前:デフォルトの名無しさん [04/08/25 20:34] 誰か611に答えてやれよワラ
619 名前:デフォルトの名無しさん mailto:sage [04/08/25 21:36] だってわかんないんだもん
620 名前:591 mailto:sage [04/08/26 00:26] どうも、>>591 です。 今日は同僚の目を盗んでVSのヘルプやらWeb上の文書をあさってみましたが、結局DoEvents()関連についてはうやむやのまま せっかく.NETに移行したことだし(2ヶ月前までExcelのVBAマクロしか書いたことなかった) スレッドとやらを使ってみようかとトライしてみました。 で、試行錯誤した末、以下のような感じのコードになりました。 Imports System Imports System.Threading Public Class Form1 ・・・ Private Sub DoLoopThread() '元Button1のクリックイベントにあった処理から、Application.DoEvents()を取っ払ったもの End Sub Private MyThread As New Thread(AddressOf DoLoopThread) Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click MyThread.start() End Sub Private Sub Form1_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing MyThread.Abort() End Sub End Class これで何とか”ループ処理中に「X」をクリックするとエラーが出る”問題は回避できるようになりました。
621 名前:591 mailto:sage [04/08/26 00:38] しかし、>>620 のコードでもまた新たな問題が発生してしまいました。 一度ループの処理が終わった後、再度Button1をクリックすると "スレッドが実行中か、または終了しています。再起動できません。" とエラーが出てしまいます。 このツールでは、Button1で始まる処理を、何回でも呼べるようにしたかったのでいろいろいじくって 結局、Button1のクリックイベントの中身を以下のように書き換えて、何とか目論見どおりの 動作をさせることができるようになりました。 Select Case MyThread.ThreadState Case ThreadState.Unstarted MyThread.Start() Case ThreadState.Running MsgBox("処理実行中です。やり直す時は一度終了してください") Case ThreadState.Stopped MyThread.Abort() Dim t As New Thread(AddressOf DoLoopThread) MyThread = t MyThread.Start() End Select これにて一件落着!と行きたい所ですが、どうもこのコードは直感的に美しくないような気がします。 一般的にスレッドの再利用(に近い機能)を実現するときのリーズナブルな方法とはどんなものなんでしょうか?
622 名前:デフォルトの名無しさん mailto:sage [04/08/26 00:55] ボクにはネタにしかみえません。
623 名前:デフォルトの名無しさん mailto:sage [04/08/26 00:58] タイマーで10ms
624 名前:デフォルトの名無しさん [04/08/26 01:52] 厨な質問で申し訳ないが、VB6のProjectをVB.netで読み込んで、 加筆修正してVB6のデータとして保存できるんでしょうか? 要はVB.netでVB6形式の保存ができるのかどうなのかを知りたいのです。
625 名前:デフォルトの名無しさん mailto:sage [04/08/26 01:55] どうあがいてもむり。
626 名前:デフォルトの名無しさん mailto:sage [04/08/26 09:55] >>624 ばっっっかじゃねーの
627 名前:デフォルトの名無しさん [04/08/26 10:08] 申しわけありませんが、質問させてください。 VB.NETで、配列を使わずに最終レコードから逆読みしていくにはどのようにすればいいのでしょうか。 1〜100までのデータがあり、100、99、98…とグリッドに表示したいのです。
628 名前:デフォルトの名無しさん [04/08/26 10:40] うるせーバカ
629 名前:デフォルトの名無しさん mailto:age [04/08/26 11:28] >>628 クズハ、ハヤクシネヨ ソノホウガヨノタメ
630 名前:デフォルトの名無しさん mailto:sage [04/08/26 11:39] フォームのデザイン時にロジックからコントロールを生成するようなことは可能でしょうか? 実効時、動的コントロール生成のやりかたはわかるのですが AccessフォームのTextBoxのようにフォームデザイナにTextBoxを配置した時点で連動するCaption(Label)コントロールも同時に生成し 以降、デザイナ上でレイアウト操作を連動させる・・・ といったようなことをやりたいのですが デザイン時にParentのInitializeComponent()へコントロール追記できるようなクラスやメソッドがあるのでしょうか? ざっとググってみても関連する情報が見当たらないもので・・・
631 名前:デフォルトの名無しさん [04/08/26 12:02] うるせーバカ
632 名前:デフォルトの名無しさん mailto:sage [04/08/26 13:24] .NETになってからは変数名にいちいち i.NETとかmyString.NETとか書かなければならなくなってめんどうになったから VB6.0に戻ろうかな
633 名前:デフォルトの名無しさん mailto:age [04/08/26 13:29] >>628 >>631 クズハ、ハヤクシネヨ ソノホウガヨノタメ ダイタイ、オマエガイテモダレモカンシャシナイ
634 名前:デフォルトの名無しさん [04/08/26 13:53] >>632 うちの.netは付けなくても動くよ
635 名前:デフォルトの名無しさん mailto:sage [04/08/26 14:04] >>634 社内(or参加プロジェクト内)での命名規約の話だろ。 >>632 VB6もリリースが終わったから、否応無しにVB.netを使わなきゃならん。。
636 名前:デフォルトの名無しさん mailto:sage [04/08/26 14:09] >>635 難儀な会社だな・・・ うちじゃコンパイラがエラー出す
637 名前:デフォルトの名無しさん [04/08/26 14:17] >>629 >>633 テメーコソヤクタタズダローガ クズハ、ハヤクシネヨ ソノホウガヨッポドヨノタメw
638 名前:デフォルトの名無しさん [04/08/26 14:40] >>637 ノロイヲカケタヨ エキノホームカラテンラクシシナイヨウニナ ケケケケ...
639 名前:デフォルトの名無しさん [04/08/26 14:52] >>638 アイニクデンシャニハノラネエンダワ ゴクロウサマ プププ...
640 名前:デフォルトの名無しさん mailto:sage [04/08/26 15:25] >>611 安いやつ買ったね? ウィザードを使わずコードで書けばOKだよ >>627 そのデータはどこに格納してあるの? >>630 DTE からオブジェクトをとって、ごにょごにょやるしかないんじゃないかな。 つまり、コントロールの機能としては無理かと。
641 名前:627 [04/08/26 16:12] 640様 返答いただきありがとうございます。 SQLサーバ7.0内のRDBとなります。接続はODBC接続しています。
642 名前:デフォルトの名無しさん mailto:sage [04/08/26 16:50] >>641 データセットに入れてあるのなら、ループで逆に読めば OK。 レコードセットに入れてあるのなら、MoveLast して、MovePrevious しながら とっていけば OK。
643 名前:627 [04/08/26 17:38] 642様 ありがとうございます。 早速、試してみたいと思います。 本当に感謝致します。
644 名前:デフォルトの名無しさん mailto:sage [04/08/26 19:01] 掲示板を自動巡回するソフトを作りたいのですが、 どういった知識が必要なのでしょうか。 いくつかの掲示板を自動巡回できるようにし、 また各掲示板用の書き込みを巡回前に用意しておけば 巡回中に、自動で投稿されるようにしたいです。 掲示板によっては投稿に必要な手順が異なったりするのも ソフトの方で登録できるようにしたいです。 どなたか、よきアドバイス・実現方法等ご教授下さらないでしょうか。
645 名前:デフォルトの名無しさん [04/08/26 19:08] >>644 まずは、IEコンポーネントとかを使わずにブラウザを作るところからスタートだな。 TCP/IPとHTTPとHTMLぐらい。
646 名前:デフォルトの名無しさん mailto:sage [04/08/26 21:00] コントロールA(アンカー左)とコントロールB(アンカー右)を配置した後、 フォームをリサイズしたら、BがAの下に潜り込んでしまいました。逆に AがBの下に潜り込むようにしたいんですが、どうすればいいんでしょうか。 各コントロールの重なり方を指定するやり方を教えてください!m(_ _)m
647 名前:デフォルトの名無しさん mailto:sage [04/08/26 21:14] >>646 まずはデザインモードでコントロールを右クリック。 話はそれから。 というか、普通それで解決法がわかると思う。
648 名前:デフォルトの名無しさん mailto:sage [04/08/26 22:32] >>644 ついこないだそんなもん作ったなぁ・・・お前は俺か?(ぉ www.gotdotnet.com/japan/student/column/firststep/ ここのダウンローダーあたりを見ればwebから取得する方法は分かるだろ。 これで巡回はいいとして・・・ あとはその掲示板への投稿方法を見なければならないからなぁ HTMLフォームの知識も必要になるだろう。 (簡単なHTTPの知識もあったほうがいいと思われ。RFCでも見るんだ) 巡回先が2chじゃないだろうな?一応 www.monazilla.org/document/index.html 自動投稿スクリプトでAA連投プログラムとか作っちゃダメだぞ
649 名前:デフォルトの名無しさん mailto:sage [04/08/27 09:43] Windows Script HostのMapNetworkDrive メソッド、RemoveNetworkDrive メソッド と同じような事をwsh使用せずにVB.NETだけでしたいのですが System.IO,System.netクラスにはなさそうだったのですができないのかな? ネットワークドライブの割り当てせずにUNC形式でパスかかってるファイル、フォルダに アクセスできればいいのですがどなたかご存知ないでしょうか?
650 名前:デフォルトの名無しさん mailto:sage [04/08/27 10:40] プログラムを常駐させといて、ユーザーのクリックに反応してある関数を動かす そんなプログラムを作りたいのですが、.NET Frameworkで実現できますか?
651 名前:646 mailto:sage [04/08/27 19:09] >>647 レス遅れてしまってすいません! ありがとうございました! とても簡単に解決できたんですね・・・申し訳ないです。助かりました。 多謝です m(_ _)m
652 名前:デフォルトの名無しさん [04/08/27 22:25] SQLからNullを含んだ列をDataSetに読み込んできたんですが、その列が Nullであるかどうかを判別するのってどのようにすればいいんでしょうか? SqlDataAdapter1.Fill(DataSet11.TestTable) For Each dr As DataSet1.TestTableRow In DataSet11.TestTable If Not dr.X Is Nothing Then .... Else If Next という感じで書いてみたんですがだめでした XMLスキーマエディタでNullValueを設定しようとしたら このコンテキストでは無効です というエラーが出てしまい、保存できません どなたがご教授お願いします
653 名前:デフォルトの名無しさん mailto:sage [04/08/27 23:43] >>652 IsDBNull関数でできると思うけど?
654 名前:デフォルトの名無しさん mailto:sage [04/08/28 09:52] >>653 出来ません。
655 名前:デフォルトの名無しさん mailto:sage [04/08/28 10:09] 自作プロパティ、メソッドに説明文をつけたいのですが方法がわかりません。 プロパティウインドウの下の部分や、入力候補に表示させるにはどうしたらいいのでしょうか?
656 名前:652 mailto:sage [04/08/28 12:28] >>653 >654の言うとおりで出来ませんでした。 datasetの項目はpropertyみたいなのでgetメソッドの中で 例外が発生しているみたいです。
657 名前:デフォルトの名無しさん [04/08/28 12:40] ちょっと質問です。 VB6.0では、スクリプトコントロール (www.microsoft.com/japan/msdn/scripting/default.asp ) があって、VBアプリからVBスクリプトを簡単に利用できましたが VB.NETで同じようなことはできるでしょうか?
658 名前:デフォルトの名無しさん [04/08/28 13:22] DataSet11ってオリジナルのクラス?
659 名前:652 mailto:sage [04/08/28 13:36] >>658 そうです。データアダプタでデータセットの生成をやったときに 新しいデータセットを作るときのデフォルトの名前がDataSet1 で、それをフォームに追加したときに出来るのがDataSet11です。
660 名前:デフォルトの名無しさん mailto:sage [04/08/28 14:10] その方法でDataSetを使ったことがないんだけど XMLスキーマ経由で返されるNULLってゼロストリング""じゃなかったっけ? CrystalReportsのXMLデータセットで使ったときはNULL=""で対処してた
661 名前:652 mailto:sage [04/08/28 15:16] >>660 XMLスキーマエディタでNullValueをemptyに設定するとゼロストリング"" になるらしいんですけど、その設定が出来ませんでした。(保存するとき にエラー「このコンテキストでは無効です」が出る) >NULL=""で対処してた それで対処できるのはわかるんですけど、たとえばSQLdatareaderとかを 使う場合とかならISDBNUllとかで対処できるからdatasetでもできるんじゃ ないかと思ったんです
662 名前:デフォルトの名無しさん mailto:sage [04/08/28 15:54] 試しに ID Int STR CHAR DT DATETIME っていうSQL結果(テーブル)からDataSet1.xsd 作ってみたんだけど STRのNullValueプロパティを(Empty)にしたら問題なくコンパイルが通った DT(DateTime)のNullValueプロパティを(Empty)にしたら 「カスタム ツール エラー : コードを生成できませんでした。システム エラーです。」 と言うのが発生したけど、これはまた別物かな 一度XMLスキーマに通してるみたいだけど 直接Data.DataSetにFillすることは出来ないのかね? Data.DataTable内のDataColumnならNull値(Nothing)が取れるんだけど 何かあんまり力になれそうにないです スマソ
663 名前:デフォルトの名無しさん mailto:sage [04/08/28 16:09] datasetじゃなくてdatatableじゃダメなん?
664 名前:652 mailto:sage [04/08/28 16:19] >STRのNullValueプロパティを(Empty)にしたら問題なくコンパイルが通った >DT(DateTime)のNullValueプロパティを(Empty)にしたら >「カスタム ツール エラー : コードを生成できませんでした。システム エラーです。」 >と言うのが発生したけど、これはまた別物かな 同じエラーです。こっちではそれでコンパイルが通らなくなっちゃうんですよね。 何がちがうんですかね? >一度XMLスキーマに通してるみたいだけど >直接Data.DataSetにFillすることは出来ないのかね? えーっと私の理解ではdatasetを生成すると自動でXMLスキーマが生成されて さらに編集したい場合にはエディタを使うってことだと思ってたんですが 違いますか? >Data.DataTable内のDataColumnならNull値(Nothing)が取れるんだけど DataTableは使ったことがないんで試してみます。 >何かあんまり力になれそうにないです >スマソ いえいえありがとうございました。参考になりました。 >>663 とりあえずやってみます
665 名前:デフォルトの名無しさん mailto:sage [04/08/28 16:35] >>664 XMLのDataSetとSystem.Data.DataSetは名前は同じなんですけど中身が別物です Dim dt As New Data.DataTable '新しいDataTable作成 SqlDataAdapter1.Fill(dt) 'でDataTable内にデータを取得できるので For Each dr As Data.DataRow In dt.Rows dr.Item(カラム名か番号) '<-これでレコードごとのカラムにアクセスできます Next な感じでデータを取得できます
666 名前:652 mailto:sage [04/08/28 18:08] >>665 >dr.Item(カラム名か番号) '<-これでレコードごとのカラムにアクセスできます ここでItem(カラム名か番号)がNULLだと例外が出てしまうんです。 If dr.Item(カラム名か番号) Is Nothing then ... If ISDBNull(dr.Item(カラム名か番号)) then ... などとやってもうまくいかないんですよ(TT)
667 名前:デフォルトの名無しさん mailto:sage [04/08/28 20:26] If IsDBNull(dr.Item(カラム名か番号)) then てやらんと。 DataRowに入ってるSystem.DBNull.Value とNothingは別物だぞ
668 名前:667 mailto:sage [04/08/28 20:32] If dr.Item(カラム名か番号) Is DBNull.Value then ... でもok
669 名前:665 mailto:sage [04/08/28 20:57] 失礼 NothingじゃなくてDBNullでした
670 名前:デフォルトの名無しさん mailto:sage [04/08/28 21:58] dr.Item(カラム名か番号) で例外が出るんだったらそれでは無理と思うが…
671 名前:デフォルトの名無しさん mailto:sage [04/08/28 22:00] って勘違いしてたかな?スマン
672 名前:デフォルトの名無しさん mailto:sage [04/08/28 23:26] ON_WM_KEYUP( )メッセージハンドラで他のアプリのキーUPメッセージって拾えますか?
673 名前:デフォルトの名無しさん [04/08/29 05:29] SqlDataAdapter1.Fill(DataSet1,"DataTable")で作成したDataTableの中身を Excelファイル(.xls)に吐き出して、Excel起動→WorkSheet表示→印刷 →Excel終了をVBのプログラムから実行したいのですが方法が分かりません。 どなたかご教示頂きたく宜しくお願いいたします。 ちなみに、VBは2003、Excelは2002、DBはMSDE-RelAです。
674 名前:デフォルトの名無しさん mailto:sage [04/08/29 08:17] >>673 www.atmarkit.co.jp/fdotnet/index/bbs/dir91.html ヒントが見つかるんでないかな
675 名前:523 [04/08/29 12:35] >>655 入力候補ってのはどんな奴を指してるかイマイチ解りませんが、 Modifiersプロパティみたいな奴だったら Public Enum testEnum t0 = 0 t1 End Enum <System.ComponentModel.Description("説明です")> _ Public Property test() As testEnum で、OKと思われる 追伸 誰か、523の回答もお願いします
676 名前:デフォルトの名無しさん mailto:sage [04/08/29 20:09] >>675 >>523 のやつまだやってたのかよ。 ってか>>518 で書いてるようにプロパティをReadOnlyにしたらいけたぞ? ReadOnlyじゃないと、DesignerSerializationVisibility.Contentの指定が生きてない感じ。 というより、コントロールのオブジェクト自体入れ替えられるんだから指定が意味なしってことかな・
677 名前:523 [04/08/29 21:20] >>676 すみません。完全に見落としてました・・・_| ̄|○ ReadOnlyにしたら出来ました。
678 名前:デフォルトの名無しさん mailto:sage [04/08/30 09:15] VisualStudio.NET2003と.NET Framework1.1の組み合わせで 使用しています。 TreeviewやListviewを使った標準的な3ペインのアプリケーションを 作っているんですが、起動時に、Treeviewに水平スクロールバーが 表示されます。必要もないのに、です(つまりノードはすべて表示し 切れています)。Treeviewの大きさを変えたりすると、消えてしまいます。 これはバグでしょうか? scrollableプロパティをfalseにすれば表示され ないんですが、これだと、ノードが表示しきれなくなったときにバーが 出なくなってしまいます。この水平スクロールバーの表示をなくすには どうしたらよいでしょうか。よろしくお願いします。
679 名前:655 mailto:sage [04/08/30 09:36] >>675 レス感謝です。 プロパティは確かに実現できました。 >入力候補ってのはどんな奴を指してるかイマイチ解りませんが、 ソースを入力している時にピリオドを打つと出てくる奴のことです。 たとえばShowメソッドだと、 Me. と打った時に入力候補が出て、Showの説明には、 コントロールをユーザーに対して表示します。 と表示されます。この説明を設定したんです。
680 名前:デフォルトの名無しさん mailto:sage [04/08/30 10:10] >>679 XML ドキュメント
681 名前:デフォルトの名無しさん mailto:sage [04/08/31 02:28] >>680 もっとわかりやすく伝わるように努力してくれませんか?
682 名前:デフォルトの名無しさん mailto:sage [04/08/31 02:46] 681 名前: デフォルトの名無しさん [sage] 投稿日: 04/08/31 02:28 >>680 もっとわかりやすく伝わるように努力してくれませんか? 他人に努力を求めるってのもすごいな
683 名前:デフォルトの名無しさん mailto:sage [04/08/31 03:47] >>681 ぎゃはははは、じゃとっととあきらめろ。 やならドキュメントコメントについて調べろ。
684 名前:デフォルトの名無しさん [04/08/31 09:56] ここは中途半端な知識の香具師が、エラを張るイソターネッツでつね。
685 名前:デフォルトの名無しさん mailto:sage [04/08/31 12:41] インターネッツ? 2ちゃんねるだよ ボケ!
686 名前:デフォルトの名無しさん mailto:sage [04/08/31 18:08] >>683 そんな一言じゃアドバイスになりません。 煽るつもりならレスしないでください。
687 名前:デフォルトの名無しさん [04/08/31 18:54] 夏の終わりに変なのが出てきたな・・・ 課題が終わらない大学生か?
688 名前:デフォルトの名無しさん [04/08/31 19:15] idCode1で絞込みをして、外装コンボボックスに値を出力、次にidCode1とidCode2で 絞込みをして内装コンボボックスに値を出力しようと思っています。 下のように書いて、外装コンボボックスに"excol_name"値は出力できました。次に この"excol_data"テーブルに存在している"excol_id"の値を"idCode2"に代入したい のですが、コンボボックスの"excol_name"をフォームから選んだ時に、その行にある "excol_id"を"idCode2"として得る方法を教えてください。 Private Sub frmMakedata_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim cmd As SqlClient.SqlCommand = SqlConnection1.CreateCommand() Dim dr As SqlClient.SqlDataReader Dim idExcol1 As Integer cmd.Connection = SqlConnection1 SqlConnection1.Open() '外装コンボボックスの設定 cmd.CommandText = "SELECT * FROM excol_data WHERE car_id =" & idCode1 & "" dr = cmd.ExecuteReader() Do While dr.Read = True cmbExcol.Items.Add(dr("excol_name")) Loop dr.Close() End Sub
689 名前:デフォルトの名無しさん mailto:sage [04/08/31 23:24] 外装とか内装って何よ 好意的に解釈すると ComboBoxが2個ある 一方に値を設定すると、他方にそれに該当する候補値を入れたいって事か だったらSelectedIndexChangedかSelectedValueChangedでその変化をひらって みるとか できたらもう少し状況がわかるように書いてくれよ つうか人間にうまく伝えられなかったら、コンピュータにもうまく伝えられないんじゃねぇ
690 名前:688 [04/09/01 00:56] えーとですね、車の見積を作ってるんです。 んで、外装の色のコンボボックスは、車種でもって、ふるいに掛けられて 内装の色のコンボボックスは、車種と外装の色でもって、ふるいに掛けた いんです。 で、外装の色コンボボックスは、excol_dataのテーブルに含まれてる車種 のidであるcar_idでふるいに掛けることに成功したんですが、内装の色の コンボボックスの値を決めようとすると、車種をあらわすidCode1=car_idと、 外装の色を表す、idCode2=excol_idが必要になるんです。 で、外装の色のコンボボックスで、色を選択したときに、このテーブルに含 まれているexcol_idを取得したい・・・というわけなんです。 判りにくくてすいません。
691 名前:デフォルトの名無しさん mailto:sage [04/09/01 01:46] 車のデータベースか・・・ 以前どこかで見かけたような・・・ いや、デジャヴだろうな・・・
692 名前:デフォルトの名無しさん mailto:sage [04/09/01 05:32] >>691 意味ないレスしてんじゃねーよ おまえはチラシの裏にでもレスしてろ
693 名前:デフォルトの名無しさん [04/09/01 07:53] オマエモナー
694 名前:デフォルトの名無しさん [04/09/01 07:54] ここは、役に立たないイソターネッツですね。
695 名前:689 mailto:sage [04/09/01 11:02] >>688 >>690 Accessとかでやった方がすこぶる簡単だと思われ
696 名前:デフォルトの名無しさん [04/09/01 20:53] ACCESS以下だと言う事が露呈しました。
697 名前:デフォルトの名無しさん mailto:sage [04/09/02 01:32] Accessって何?
698 名前:デフォルトの名無しさん mailto:sage [04/09/02 02:40] TreeViewコントロールのツリー構造をどこかに保存しておき、 アプリケーションを起動したときに、そのツリー構造を正確に 再現するようにしたいんですが、どうしたらいいのか見当つかず 困っています・・・。このツリー構造は、ユーザーがノードを 追加・削除できるもので、プログラマ側が、具体的にどのような ツリー構造となるかは予想できません。TreeViewコントロールは いろんなアプリに利用されていて、保存・再現はほとんど必須の テクニックだと思うのですが・・・。どのように処理するとよいんで しょうか。
699 名前:デフォルトの名無しさん mailto:sage [04/09/02 10:34] >>698 検索しろ。過去ログ嫁。
700 名前:デフォルトの名無しさん mailto:sage [04/09/02 17:40] Webサービスで <WebMethod()> _ Public Function FX(ByVal X As Integer, ByVal Y As Integer, ByVal Z As Integer) As Integer Z = X + Y End Function というサービスを起動し クライアントアプリケーション(VB.NET)でZの値を取得しようとしたのですが 値が返ってきません Webサービスでは引数に戻り地を渡すことは出来ないのでしょうか?
701 名前:デフォルトの名無しさん mailto:sage [04/09/02 19:46] ByVal Z As Integer じゃなくて ByRef Z As Integer じゃないのかな
702 名前:デフォルトの名無しさん mailto:sage [04/09/02 21:46] >>697 Office製品の一部?
703 名前:デフォルトの名無しさん mailto:sage [04/09/02 22:13] >>700 何がしたい
704 名前:デフォルトの名無しさん mailto:sage [04/09/02 22:23] >>698 キーワード: シリアライズ
705 名前:デフォルトの名無しさん mailto:sage [04/09/02 22:39] シリアライズする元ですら作れないと思われ。 っていうか、TreeViewの情報って何を保存しときたいの? ツリーの構造と状態?名前?その他のデータ? その情報は誰が(何が)操作、作成するわけ?
706 名前:デフォルトの名無しさん [04/09/02 22:46] 役に立たないから落とせよ、このスレ。 プ
707 名前:デフォルトの名無しさん mailto:sage [04/09/02 22:48] (σ´∀`)σ)・ω・) >>706
708 名前:デフォルトの名無しさん mailto:sage [04/09/02 23:38] みんな基本コントロールを継承して軽くカスタマイズして使ってるだろけど、 ネットで公開してるのは少ないな。 TreeViewの構造を読み書きできる継承クラスぐらい落ちてそうなもんなのに。
709 名前:700 mailto:sage [04/09/03 00:25] おそくなりました >>701 ByRefにしてみてもダメでした >>703 サーバ上のとあるユーティリティ(COMコンポーネントで実装)を実行して 検索結果を返すというサービスです 複数の結果を同時に返す必要があるので 引数で返す方法をとりたかったのですが
710 名前:デフォルトの名無しさん mailto:sage [04/09/03 08:54] >700 Returnしなくていいのか?
711 名前:デフォルトの名無しさん mailto:sage [04/09/03 08:56] >700 709読んでなかった、710は見逃してくれ。 構造体で返したらだめ?
712 名前:デフォルトの名無しさん [04/09/03 11:18] めちゃめちゃ基本的な質問ですが。 ポップアップして処理状況を表示したりするときって、どういう処理してます? MessageBoxと違って、自動で閉じたりしたい場合。 CreateObject("WScript.Shell").Popupだと秒数指定で閉じられるけど、 これだと外部からクローズできるのかな? でもこんなので遅延バインディングするのもなんか嫌なかんじ。 わざわざ個別にフォーム作るのもめんどくさいんで、 Timeoutプロパティとか表示メッセージのプロパティとかを くっつけたクラスをさくっと作ろうかと思ったけど、 普通みんなどうしてるんでしょう。
713 名前:デフォルトの名無しさん mailto:sage [04/09/03 12:36] 時間が来たら自律的に死ぬクラスがそんなに悩むようなこととも思えないが。。
714 名前:デフォルトの名無しさん mailto:sage [04/09/03 14:05] 作るのに悩んでるんじゃなくて、 定石を知りたいんじゃないのかな? 自律死はともかく、ポップアップ窓はなんか標準であってもよさそうだし。
715 名前:デフォルトの名無しさん mailto:sage [04/09/03 14:34] (´-`).。oO( 自演Z
716 名前:700 mailto:sage [04/09/03 15:26] >>711 本来はクライアントアプリケーションで使うOCXを Webサービスで使おうとしているので r = FX.HOGE(X,Y,Z) <= Zに計算結果、rは成功か失敗か このようなOCXの場合 r = FXweb.HOGE(X,Y,Z) <=Web経由で同じ作業をさせたい のように FXオブジェクト をWeb参照にするだけで、現状のソースを書き換えたかったのです もともと「IIS(ASP)でも使えます」というOCXだったので 上記のような使い方が出来るものかと思いまして・・・ ただWebサービスの内部はXMLのPOSTのようなので、引数はInputのみなのかもしれません 別の方法が無いか試して見ます
717 名前:デフォルトの名無しさん [04/09/03 17:04] vb.netで「ペイント」のようなソフトを作りたいんですけど、 良いサンプルありませんか?
718 名前:デフォルトの名無しさん mailto:sage [04/09/03 18:46] 無い
719 名前:デフォルトの名無しさん [04/09/03 19:08] Dim X As string = (SqlDataAdapter1.SelectCommand.CommandText = "SELECT name FROM member WHERE member_id = 25") ってやったら、Xにid25番の人のnameじゃなくて、TrueかFalseが帰ってきちゃうんで すが、nameを返すにはどうしたらよいでしょうか?
720 名前:デフォルトの名無しさん mailto:sage [04/09/03 19:49] >>719 Dataset の使い方を一から勉強しなおす。
721 名前:デフォルトの名無しさん mailto:sage [04/09/03 20:02] DBやったこと無いけど>>719 は絶対に真偽値を返す事だけはわかる。
722 名前:まんこ ◆yCMANKO3dM [04/09/03 20:11] 質問内容からして素人なんだから、だれか説明してやれよwwww。
723 名前:デフォルトの名無しさん [04/09/03 21:01] ばか、ここは生まれながらにして、VBが使える神の集うスレナンダよ! だから、どんな質問でも完璧に答えられる。 自分で調べろ! な?完璧だろ?
724 名前:デフォルトの名無しさん mailto:sage [04/09/03 22:37] タスクトレイに表示したアイコンから www.geocities.jp/mootdata/unno.jpg みたいにメッセージを表示したいのですが どう殺ったらよいのでしょうか?
725 名前:デフォルトの名無しさん mailto:sage [04/09/04 00:24] >>713 簡単なようだが、まともに動作する、かつ問題のない こういうクラスを作るのは、それ程簡単でもないぞ。
726 名前:デフォルトの名無しさん [04/09/04 00:54] >>724 VBの神が答えてやろう。 自分で調べろ。
727 名前:デフォルトの名無しさん [04/09/04 01:11] >>724 一番簡単なのは新しいハードウエアを抜き差しすることだな
728 名前:デフォルトの名無しさん mailto:sage [04/09/04 01:12] Objectのキャストについてどなたかご存じでしたら教えてください。 ・フォームに複数のコントロールがある ・各コントロールのTagプロパティに、文字列 またはオブジェクトがセットされている この状態で、フォーム内の全コントロールを参照して Tagプロパティに文字列"hogehoge"がセットされているもの だけに処理を施したいと思い、Tagプロパティをcstrでキャストして "hogehoge"と比較したいのですが オブジェクトが入っている場合、エラーになってしまいます。 こういう場合、cstrでキャストできるかどうかの判断をする方法 というのはあるのでしょうか? それとも、TryCatchで例外を拾うしかないのでしょうか?
729 名前:デフォルトの名無しさん mailto:sage [04/09/04 01:19] If TypeOf hoge.Tag Is String AndAlso CStr(hoge.Tag) = "hogehoge" Then ほにゃらら
730 名前:デフォルトの名無しさん [04/09/04 08:01] ↑ちがうだろ。 正解は、自分で調べろ。だろw
731 名前:デフォルトの名無しさん mailto:sage [04/09/04 08:36] なにこの良スレ
732 名前:デフォルトの名無しさん [04/09/04 09:03] 初心者に”自分で調べろ”と言って、日ごろの憂さを晴らすデジタル・ドカタ のスッドレはココですか?
733 名前:デフォルトの名無しさん mailto:sage [04/09/04 10:14] 初心者じゃなくて、何か(例えば「初心者」)を口実っていうか免罪符にして 他人を利用しようとするズウズウしい横着者を叩いて日ごろのウサを晴らす デジドカのスレがここですが文句ありますか。 ついでに自分のあつかましさを批判されると逆切れする>>732 みたいな あつかましい奴ももれなく叩いておりますが。
734 名前:デフォルトの名無しさん [04/09/04 10:20] ↑デジタルドカタキター。
735 名前:デフォルトの名無しさん mailto:sage [04/09/04 10:33] 休日の朝から、カルシウム不足の>>733 が湧いたな、牛乳でも飲んでろ。 >>719 もまいは、明日から俺のメイドさんになること。もしくは口からクソを垂れる前と後 にSirをつけること。あと、入門書に乗ってないことでも、冷静に色々やってみろ。 '変数の定義 Dim X As String 'SqlConnection1を使って、データコマンド作成 Dim cmd As SqlClient.SqlCommand = SqlConnection1.CreateCommand 'データーリーダーの設定 Dim dr As SqlClient.SqlDataReader 'コマンドのコネクション設定 cmd.Connection = SqlConnection1 '検索条件の設定(A) cmd.CommandText = "SELECT name FROM member WHERE incol_id = 25 " 'コネクションを開く() SqlConnection1.Open() 'データリーダーから、データーを読み出す dr = cmd.ExecuteReader() '読めたら、Xに代入・・・(A)のSQLでnameのところを*にしてXをYだのZだのに変えて、 '好きなだけ変数を引っ張れw Do While dr.Read = True X = dr("name") Loop 'データリーダーを閉じる() dr.Close() 'コネクションを閉じる() SqlConnection1.Close() デジタルドカタは、人に者を教えるときはそいつのレベルまで下がって教えてやれよw。 お前らだって誰かに習っただろうにwww。
736 名前:デフォルトの名無しさん mailto:sage [04/09/04 11:00] >>724 これは漏れも知りたい >>727 ワロタ
737 名前:デフォルトの名無しさん mailto:sage [04/09/04 13:05] >>724 Baloon Tooltip を使え。
738 名前:デフォルトの名無しさん [04/09/04 16:07] DateTimePickerコントロールをデータセットに連結してます。 ユーザー操作無しにコントロールのValue値をデータセットに反映させるには どうすればいいのでしょうか? 例えば、新規レコード追加Formでコントロールに年月日が表示されますが、 その日付でいいやと言うことでコントロールを操作しないと、新規レコードの 日付はNullになってしまいます。 これを何とかしたいです。言葉足らずがあったらすみませんm(_ _)m
739 名前:デフォルトの名無しさん [04/09/04 17:43] 変更がない時は、Nowを突っ込む。 Null入れてんじゃねえよ!と言うエラー捕まえて、Nowを突っ込む。 てのは?
740 名前:デフォルトの名無しさん mailto:sage [04/09/04 17:56] 意味がわかりません
741 名前:738 mailto:sage [04/09/04 18:07] >>739 レスありがとうです。 現状は、 Dim dvHogeHoge As DataView Dim cm As CurrencyManager DateTimePickre.DataBindings.Add("Text",dvHogeHoge,"HIDUKE") みたいな感じになってるので、 If DateTimePickre.Text = "" Then dvHogeHoge(cm.Position)("HIDUKE") = Now() End If ってな感じで試してみようと思います。
742 名前:デフォルトの名無しさん [04/09/04 18:09] だから、直接連結させずに、一端変数に入れて、変数に入れた内容をupdateするときに その変数をDBに突っ込めば?んで、変数の初期値をnowにでもしとけば、底がNullに なるって事はないでそ?
743 名前:デフォルトの名無しさん mailto:sage [04/09/04 18:10] って、>>740 は>>741 とは違う人だったかw。
744 名前:デフォルトの名無しさん mailto:sage [04/09/04 20:04] 自フォームのListViewから(エクスプローラのように)他のアプリ ケーションに対し、Drag&Dropでファイル名を与えたいのですが、 方法がよくわかりません。 Private Sub ListView1_ItemDrag(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemDragEventArgs) Handles ListView1.ItemDrag Dim filename as String filename = (略) ListView1.DoDragDrop(filename, DragDropEffects.All) End Sub としてみたのですが、Dragしてもマウスカーソルは(/)のままで、 エクスプローラからのDrag&Dropなら受け取ってくれるアプリも Dropに無反応です。 例外としてMS Wordは文字列(filename)を受け取ってくれました。 何かやるべきことが抜け落ちているのでしょうか、教えてください。
745 名前:デフォルトの名無しさん mailto:sage [04/09/04 21:06] たしかオライリーだっけ?それ使えばいいのかな
746 名前:デフォルトの名無しさん [04/09/05 07:14] 質問させてもらいます。 Textbox1〜3にA,B,Cと入力した文字を、WriteLine関数 を使って、テキストファイルの1行目に "A","B","C" というような内容で保存したのですが。 ListViewに見出し行を3つ設定したもの (例えば 番号,氏名,フリガナ ) を、それぞれ見出し行別に、保存したファイルの内容を 表示するように読み込むにはどうしたらいいでしょうか。
747 名前:デフォルトの名無しさん mailto:sage [04/09/05 10:11] 少しは考えろ
748 名前:デフォルトの名無しさん mailto:sage [04/09/05 11:39] オマイもその生産性のない行為と人生について考えたらどうかね
749 名前:デフォルトの名無しさん mailto:sage [04/09/05 12:02] クレタ人は嘘つきだとクレタ人はいった。 生産性のない行為と人生について考えろ、といった者は、 「生産性のない行為と人生について考えろ」という行為の生産性と 彼の人生にいおける意味について考えた...?
750 名前:デフォルトの名無しさん mailto:sage [04/09/05 12:23] 面白い!
751 名前:デフォルトの名無しさん mailto:sage [04/09/05 14:32] >>749 考えたらこんな感じになった ってかVBじゃなくなってしまった すまそ public Menbs = new Menbs(748); while(にちゃんねら.人類なんてどうしようもないんだよとオモタカウンタ < 1000000) { foreach(2CHスレッド スレ in 2CH) { for(int i=1; i<1001;++i) { if(にちゃんねら.watch(スレ,i)==Menbs.ゴミクズ || にちゃんねら.watch(スレ,i)==Menbs.糞レス) ++ にちゃんねら.人類なんてどうしようもないんだよとオモタカウンタ; ++にちゃんねら.ストレス; } } } print("そうか、人類皆殺しにすればいいだよ\n"); Exit(人生);
752 名前:デフォルトの名無しさん mailto:sage [04/09/05 18:28] ちゃんとVB.NETで書かんかい。
753 名前:デフォルトの名無しさん [04/09/05 19:13] 質問させてください。 タイマーの割り込みは1ms単位で設定できるようなのですが、実際に動かすと、10ms単位になっているようです。 1ms単位で割り込みをかけられないのでしょうか?
754 名前:デフォルトの名無しさん mailto:sage [04/09/05 19:18] 何のタイマーってかどういうタイマーってか、Timerは何使ってんだ? ちなみにまじめに書くと多分やろうとしてることは無理だからあきらめろ。
755 名前:デフォルトの名無しさん mailto:sage [04/09/05 20:34] >>753 知ってるけど教えてやらない
756 名前:デフォルトの名無しさん [04/09/05 20:39] そんなこと言わないで教えてよ。
757 名前:デフォルトの名無しさん mailto:sage [04/09/05 22:28] >>756 System.Timers.Timerは精度が高い www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemtimerstimerclasselapsedtopic.asp > イベントを時間どおりに発生させるという点で、Windows のタイマより正確です。
758 名前:デフォルトの名無しさん [04/09/06 00:04] >>757 ありがとうございました。 明日、会社で試してみます。
759 名前:デフォルトの名無しさん mailto:sage [04/09/06 00:08] 正直結局同じような問題に引っかかると思うぞ…
760 名前:デフォルトの名無しさん mailto:sage [04/09/06 00:21] Winのプロセスのタイムスライスってmsecのオーダーだったような気がするんだけど。。 OSのタイムスライスより短い間隔のイベントって無理じゃないだろうか? 少なくともマイコンのタイマ割り込みみたいに厳密にはいかないはず。 >>753 って組み込み系の人か? Winのプログラミングってのはハード(CPU)をプログラミングしてるんじゃなくて ハード上に仮構された仮想機械をプログラミングしてるんだってことを忘れてないか?
761 名前:なんかの壁 [04/09/06 10:47] 不思議な現象に悩んでいます。 DatagridのdataSourceにDatatableを設定して表示しています。 プログラムでDatatableをカラムから作成しています。 1回目の実行ではうまく表示されます。 2回目でDatatable作り直すとカラムだけ表示されて、データ部分が 表示されません。 1回目も2回目も動くプログラム部分は同じです。対象となるデータが異なるだけです。 (ちなみに、プログラムを再起動して先ほど2回目に行ったデータで実行してみると正しくデータも表示 されています) なにか初期設定すべきことでもれていることがあるようですが、 いくら調べてもわかりません。
762 名前:デフォルトの名無しさん mailto:sage [04/09/06 11:13] 不思議ですね。
763 名前:デフォルトの名無しさん [04/09/06 15:25] ソースを張れよ
764 名前:なんかの壁 [04/09/06 16:23] 失礼いたしました。 ソースはかなり大きいので・・・。 問題箇所が判明しました。 datatableを作り直すとき、resetメソッドを使っていたのが問題だったようです。 テーブル自体は作り直せるのですが、何かの情報が失われるようです。 (Public tbl as Datatable) (Form_Loadで tbl = New DataTable("table1")) 元: tbl.reset() 修正後: tbl = Nothing tbl = New DataTable("table1") 本当の理由がわからないのが弱点ですが。
765 名前:デフォルトの名無しさん mailto:sage [04/09/06 16:36] ┐(´ー`)┌
766 名前:デフォルトの名無しさん [04/09/06 17:27] ちょっと急ぎなんで過去ログとか読んでなくてすみません。 textboxをラベルみたいに表示させたいんですが、 どうしたらよいでしょうか? 文字色は黒でフォーカスが行かないよう(クリックも不可)にしたいです。
767 名前:デフォルトの名無しさん mailto:sage [04/09/06 17:36] >>766 知ってるが急いでるんで教えられない。
768 名前:デフォルトの名無しさん [04/09/06 17:39] enable = false
769 名前:デフォルトの名無しさん [04/09/06 17:43] enable = false でやると、 文字色が灰色になっちゃいますよね? 文字色黒のまま使いたいのですが・・・
770 名前:デフォルトの名無しさん mailto:sage [04/09/06 18:08] readonly = true
771 名前:デフォルトの名無しさん [04/09/06 18:11] readonly = true でやると クリックした時にフォーカスが行きますよね? 文字色黒、クリック不可の状態を作りたいのですが、 どうしたらよいでしょうか?
772 名前:デフォルトの名無しさん [04/09/06 18:13] すいません。 クリック不可ではなく、選択不可です。 文字色黒、中の文字を選択不可の状態を作りたいです。
773 名前:デフォルトの名無しさん [04/09/06 18:34] 上からラベルをかぶせる
774 名前:デフォルトの名無しさん [04/09/06 18:37] やっぱラベルかぶせるしかありませんかね? テキストボックスのみでどうにかできるのが、 理想なんですが。
775 名前:デフォルトの名無しさん [04/09/06 18:38] つ〜か、なんでラベルが使えないの?
776 名前:デフォルトの名無しさん mailto:sage [04/09/06 18:38] ていうか、なんでラベルじゃだめなのか。
777 名前:デフォルトの名無しさん mailto:sage [04/09/06 18:38] オホホかぶった。
778 名前:デフォルトの名無しさん [04/09/06 18:42] パラメータによって、 そのフィールドが入力出来たり出来なかったりします。 で、入力不可の時はラベルみたいにして欲しいと言われてるんで。
779 名前:デフォルトの名無しさん mailto:sage [04/09/06 18:49] Windows標準から外れたことをやろうとしてるわけだから エレガントに解決しようとせず、実際にラベルを使うのが ベストだと思う。 実行時にラベルを生成して、TextBoxと同じBoundsに 置いて、TextBoxを消せばいいんだろ。
780 名前:デフォルトの名無しさん [04/09/06 19:04] わかりました。 そのやり方で上司と相談してみます。 回答ありがとうございました。
781 名前:デフォルトの名無しさん mailto:sage [04/09/06 19:05] sage忘れた。すみません。
782 名前:779 mailto:sage [04/09/06 20:02] >>780 その要求の出所がお客じゃなくて上司だったら、 「そんな間抜けなUIじゃ笑われますよ」って言ってやるが。
783 名前:デフォルトの名無しさん mailto:sage [04/09/06 20:29] 注文が多いな
784 名前:デフォルトの名無しさん [04/09/06 20:46] 笑うのはプログラマの都合。見た目重視を求めるなら 十分有りうる想定。 笑われますよ、とか、出来ませんとかは只の言い訳だし。
785 名前:デフォルトの名無しさん mailto:sage [04/09/06 21:19] いや、見た目重視ならむしろWinの標準のUIの方が統一感があり直観的だと思うが。。 それ以上に必要以上に見た目が変化するUIなんてダサイしイライラするだろう。 まあ、マーキーで文字が流れまくりのウェブサイトをかっこいいと思う人も いるわけだから蓼食う虫も好き好きといえばそれまでだけど。
786 名前:デフォルトの名無しさん mailto:sage [04/09/06 21:31] Textboxを継承してLabelを内在するコントロールクラス作っとけ。 で、プロパティで表示を切り替え。
787 名前:779 mailto:sage [04/09/06 21:39] >>784 「すいません、できません」は言い訳っていわないと思うが。 「なんでそんなバカな仕様で受けてきたんだ」はよく使う言い訳。 というか遠吠え。
788 名前:デフォルトの名無しさん mailto:sage [04/09/07 00:12] >>784 言われたこと全部やろうとするのかお前は。
789 名前:デフォルトの名無しさん mailto:sage [04/09/07 09:28] メール送信のプログラムを作成していたのですが、CDO.messageにアクセスできません。 という例外がでて送信することができません。 調べたところ私の使ってるメールサーバのSMTPがPOP before SMTPになっていたので 1〜4行目を追加したところ、自分から自分には送信できたのですが 他のメールアドレスに送信すると同じ例外が帰ってきました。 本についてるメール送受信のサンプルソースなども試したのですが わたしのメールサーバの設定では、例外こそ出ないものの他のメアドに送信すると 何故かメールが消えてしまい、相手にも届かなければこちらに送信エラーで 帰ってもきませんでした。 どなたか良い解決方法はないでしょうか? 1 Dim tcp As New System.Net.Sockets.TcpClient() 2 tcp.Connect("pop.hogenet.ne.jp", 110) 3 Dim sw As New StreamWriter(tcp.GetStream()) 4 sw.Write("USER hoge" + vbCrLf + "PASS ******" + vbCrLf + "STAT" + vbCrLf + "QUIT" + vbCrLf) 5 Dim mm As New System.Web.Mail.MailMessage() 6 mm.From = "hoge@hogenet.ne.jp" 7 mm.To = "piyo@piyo.co.jp" 8 mm.Subject = "てすと" 9 mm.Body = "てすとです" 10 mm.BodyEncoding = System.Text.Encoding.GetEncoding(50220) 11 System.Web.Mail.SmtpMail.SmtpServer = "smtp.hogenet.ne.jp" 12 System.Web.Mail.SmtpMail.Send(mm)
790 名前:デフォルトの名無しさん mailto:sage [04/09/07 09:49] 追記 なお、自分自身にメールを送信すると 必ず差出人のところ『のみ』が文字化けしてしまいます。 ただ、差出人を本当のメールアドレスの"hoge@hogenet.co.jp"から "hage@hogenet.co.jp"や"hoge@hogehogenet.co.jp" などと出鱈目なものにすると何故か文字化けせずに受信できました。 使用環境は WindowsXP Professional Version2002 Service Pack 1 Microsoft Visual Basic .NET Microsoft.NET Framework 1.0. 使用しているメールソフトはNetscap 7.1です
791 名前:デフォルトの名無しさん mailto:sage [04/09/07 10:37] 関係あるかわからんけど mm.Headers("Content-Transfer-Encoding") = "7bit" これしたらどうだろうか。これしないとQuoted-Printableになっちゃって 受け付けないor化ける相手がいたことならある。
792 名前:デフォルトの名無しさん [04/09/07 10:56] >>789 プロバイダ経由しないで送信できないの? たとえばIISからとか
793 名前:デフォルトの名無しさん mailto:sage [04/09/07 11:20] >>791 ご指摘ありがとうございます。 mm.Headers("Content-Transfer-Encoding") = "7bit" の一文だけでは文字化けは直らなかったのですが 以下のヘッダー情報を追加したところ、 mm.Headers("Content-Transfer-Encoding") = "7bit" mm.Headers.Add("Reply-To", "hoge@hogenet.ne.jp") mm.Headers.Add("sender", "piyo@piyo.co.jp") 差出人の文字化けは直りました。 何故か"sender"を抜くと文字化けしたままなのが よくわかりませんけど・・・。 あと、エラーメッセージももう少し掘り下げてみました。 サーバーによって 1 つまたは複数の受信者アドレスが拒否されました。サーバーからの応答は次のとおりです。 550 5.7.1 <piyo@piyo.co.jp>... Relaying denied. Proper authentication required. 'CDO.Message' オブジェクトにアクセスできませんでした。 System.Web at System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) at System.Web.Mail.CdoSysHelper.Send(MailMessage message) at System.Web.Mail.SmtpMail.Send(MailMessage message) at mail.Form1.sendMail() in C:\temp\mail\Form1.vb:line 98 >>792 IISやSMTPなどの設定もあまりよくわからないのですが 開発環境でIISを使用して作ったとして、Home Editionなどを使っている 他の端末でも実行できるのでしょうか?
794 名前:デフォルトの名無しさん mailto:sage [04/09/07 12:05] >>793 IISさえ起動していればHomeでもいけると思う(試したことが無い やり方はSmtpServerプロパティを設定しないだけ
795 名前:デフォルトの名無しさん mailto:sage [04/09/07 13:02] >>794 説明の仕方がまずかったかもしれません。 Aという端末(HomeEdition)がある処理をしたら その結果をB端末(HomeEdition)、C端末(HomeEdition)・・・ にメールの形で報告するというものなので IISが起動しているサーバというものはないのです。 普通のメールソフトで送受信できているので できればわざわざA端末にProを入れてIISを起動させる。 という事はしたくないのですが、IISを使わないと 簡単にメール送受信を実現させる事は難しいのでしょうか?
796 名前:デフォルトの名無しさん mailto:sage [04/09/07 13:07] >>795 550 5.7.1 <piyo@piyo.co.jp>... Relaying denied. Proper authentication required. リレー拒否されてますけど、 >6 mm.From = "hoge@hogenet.ne.jp" これちゃんとそのサーバにアカウントのあるアドレスですか?
797 名前:デフォルトの名無しさん mailto:sage [04/09/07 13:13] >>796 それはもちろんあります。 SMTP、POP、FROMのメールアドレスは メーラーで使われているものをそのまま コピペでもってきたものです。 TOの方のメールアドレスも当然実在するもので メーラーで送る分には何の問題もなく使えるものです。
798 名前:デフォルトの名無しさん mailto:sage [04/09/07 13:14] >>789 (OutlookExpress等で) 一旦POPで読んでから動かすとどうなりますか? なんとなく POP before SMTP がうまく行っていないだけのような気もします。 あと System.Web.Mail.Message って ISO-2022-JP が使えない(ですよね)ので、 日本語は送らない方がいいと思いますよ。 受信するのも自分ならいいのかもしれませんが。
799 名前:デフォルトの名無しさん mailto:sage [04/09/07 13:18] >>789 BASP21を検討汁
800 名前:デフォルトの名無しさん mailto:sage [04/09/07 14:19] >>789 >(OutlookExpress等で) 一旦POPで読んでから動かす というのは、メーラーを立ち上げる→プログラムを実行する。 ということでしょうか? とりあえずそれを実行してもダメでした。 あと、POP before SMTP が上手くいっていないという事だったので 4行目のソースのUSERとPASSを出鱈目なものして自分自身に送ってみたところ それでも普通に送れてしまいました。 なのでPOP before SMTPが上手くいってなくて同じドメインの 自分のメールアドレスにだけメールを送る事が出来ているのかもしれません。 それと、ISO-2022-JPに関しては参考にしたサンプルソースで 日本語を送れる版ということでISO-2022-JPの設定があったので 10行目のISO-2022-JPの指定は問題ないと思います。 >>799 どうしようもなければそういった方法も検討しないといけないのかもしれませんが まだ時間があるので出来れば自力で実現できる方法を考えたいと思います。
801 名前:デフォルトの名無しさん mailto:sage [04/09/07 14:44] >>800 例えば foo@bar.com に送るとして、nslookup -type=MX bar.com で得られる mail exchanger を SmtpServer にセットして、直接先方へ送れば多くのケースで動くと思います。 nslookup は System.Diagnostics.Process.Startで起動して、標準出力を貰えばよいでしょう。
802 名前:デフォルトの名無しさん mailto:sage [04/09/07 16:14] >>801 その方法であっさり送る事が出来ました。 POP before SMTP で自分の所属するSMTPから 他所のドメインに送信する方法でかなり悩んでいたのですが こんな方法があるとは思いも尽きませんでした。 本当にありがとうございます! アドバイスして下さった皆さんにもとても感謝しています。 おかげさまでメール送受信の仕組みも全然勉強不足なのを痛感できました。 今回は801さんの方法で送ることができましたが 他の実現方法もないか勉強がてらいろいろ試してみようと思います。
803 名前:デフォルトの名無しさん [04/09/07 16:32] >>801 神認定
804 名前:デフォルトの名無しさん mailto:sage [04/09/07 17:13] >>802 ウィルス/ワームの類でPCを乗っ取って spam をガンガン送る奴とかへの対策でLAN 内部から外部への smtp での直接アクセスをはじくネットワーク管理者も多いと思いますので、その辺を考慮する必要がある なら自分の側のサーバ経由での SMTP の方も使えるようにしたほうがよいでしょう。 そういったネットワークの内部からなら、内部の smtp サーバには認証無しで送れそうな気もするし。
805 名前:デフォルトの名無しさん mailto:sage [04/09/07 21:59] このスレ、俺がいなければ良スレだな
806 名前:デフォルトの名無しさん mailto:sage [04/09/07 23:08] >>805 俺がいなければ良スレだよ
807 名前:デフォルトの名無しさん mailto:sage [04/09/08 12:50] ソリューション内に、AとBのプロジェクトがあります。 Aにフォームを継承したクラス1と、それを継承したクラス1'があります。 このクラス1と1'をBプロジェクトでも使用したいので、 リンクファイルとして追加しました。 ですが、実行しBプロジェクトでクラス1'をNewしようとすると、 指定されたカルチャ (またはニュートラル カルチャ) に必要なリソースがアセンブリに見つかりません。 "クラス1'.resources" が、アセンブリ "Bプロジェクト" に正しく埋め込まれているか、 またはリンクされているかを確認してください。 というエラーが発生してしまいます。 ビルドは通ります。 それぞれのプロジェクトをソリューションから切り離した場合もうまく動きました。 フォームを継承していない自作クラス2と2'は動作しています。 サブクラスはリンクファイルとして使用できないのでしょうか?
808 名前:デフォルトの名無しさん mailto:sage [04/09/08 16:37] はい、その通りです。
809 名前:デフォルトの名無しさん mailto:sage [04/09/09 02:59] なんでリンクファイルにしたいわけ?
810 名前:デフォルトの名無しさん mailto:sage [04/09/09 03:04] 現在、.Net Remotingの勉強をしようと MSDNのサンプルを試してみています。 System.Runtime.Remoting.Channels.Tcp名前空間を インポートするように書いてあるのですが、自分の環境では 名前空間が見つからないというエラーになってしまいます。 確かにSystem.Runtime.Remoting.Channelsの メンバ一覧にも出てきません。 普通にインポートできるものじゃないんでしょうか?
811 名前:810 mailto:sage [04/09/09 03:07] System.Runtime.Remotingを参照設定したら解決しました。 すみませんおさわがせしました。
812 名前:デフォルトの名無しさん [04/09/09 17:09] Windowsアプリケーションを作成しています。 プログラムの中で予期せぬエラーが発生した場合に、共通のエラーメッセージを表示したいのですが、 すべてのイベントにTry〜Catchを書かずに実現する方法はありませんか? ASP.NETではGlobal.asaxでApplication_OnErrorにエラーメッセージ表示を記述すれば実現できたのですが、Windowsアプリケーションでは無理なんでしょうか。。。
813 名前:デフォルトの名無しさん [04/09/09 17:50] >>812 試してないけど Application.ThreadException イベント はダメだった?
814 名前:デフォルトの名無しさん mailto:sage [04/09/09 23:47] 質問です。 実行時にフォームに labelコントロールを作ろうとしています。 C = New Label Me.Controls.Add(C) ってやると作れるのはわかりました。 既にある Label1 のコピーみたいなのはできませんか? C = Label1 ってやると実態は増えてないし、 New Label を Label1 で初期化できるといいのですよ。 なにかやり方ありますか?
815 名前:デフォルトの名無しさん mailto:sage [04/09/10 00:53] あるわけねーだろ馬鹿
816 名前:814 mailto:sage [04/09/10 11:40] >>815 そっか。じゃ しかたない。
817 名前:デフォルトの名無しさん [04/09/10 11:46] 現在の Object の簡易コピーを作成します。 [Visual Basic] Protected Function MemberwiseClone() As Object [C#] protected object MemberwiseClone();
818 名前:デフォルトの名無しさん [04/09/10 12:13] For Nextでクルクル回しながら得た値を TextBox1.Text TextBox2.Text と順番に突っ込んで生きたいのですが For i = 1 TO 10 として TextBox"i".Textと言う格好で、末尾を変数にしての 名前の指定の仕方がわからず困っています。 どなたかボスケテいただけませんか?
819 名前:デフォルトの名無しさん mailto:sage [04/09/10 12:22] どうしてもそういうヘンなことがしたいのなら、>>545 あたりを一読した上で、 Type.GetField と FieldInfo.SetValue あたりを使えばいいと思うけど、絶対お勧めしない。 事前にコントロールへの参照を配列に入れておいたほうがいいと思う。
820 名前:デフォルトの名無しさん [04/09/10 13:12] 特別な事情がないなら>>819 の方法がいいと思う。
821 名前:デフォルトの名無しさん mailto:sage [04/09/10 13:44] >>819 今回はSetValueじゃなくて、FieldInfo.GetValue で TextBox をとってきてから普通に Textプロパティにセットだね。 でも漏れも絶対にお勧めしない。
822 名前:デフォルトの名無しさん mailto:sage [04/09/10 15:49:41] >>818 Public Function FindControl2(ByVal ctl As Control, ByVal name As String) As Control Dim myPropertyInfo As System.Reflection.PropertyInfo Dim myObject As Object myPropertyInfo = ctl.GetType().GetProperty(name _ , Reflection.BindingFlags.Instance _ Or Reflection.BindingFlags.NonPublic) If Not myPropertyInfo Is Nothing Then myObject = myPropertyInfo.GetValue(ctl, Nothing) Return CType(myObject, Control) End If Return Nothing End Function for i as int32 = 0 to 10 findcontrol2(me,"textBox" & cstr( i) ).text="aheahe" next
823 名前:デフォルトの名無しさん mailto:sage [04/09/10 16:10:09] 絶対できない無理 とか言われると、意地でもなんか探してくる性
824 名前:814 mailto:sage [04/09/10 21:19:50] >>817 なんだ、本当はあるのか。 でも使い方がよくわからないよ。 Label1.MemberwiseClone なんて出来ないみたいだし。 新しいクラスを作るのかな? もう少し教えて。
825 名前:デフォルトの名無しさん mailto:sage [04/09/10 23:06:21] できるわけね〜だろ
826 名前:デフォルトの名無しさん mailto:sage [04/09/10 23:07:24] >>817 変な事教えるなよ…
827 名前:最凶VB厨房 mailto:sage [04/09/10 23:14:34] www.microsoft.com/japan/msdn/library/?url=/japan/msdn/library/ja/cpref/html/frlrfSystemICloneableMembersTopic.asp?frame=true
828 名前:sage [04/09/11 03:02:39] >>818 こういうことでええどすの? Const s As String = ",うほ,いい男" Dim i As Integer For i = 1 To 2 Form1.Controls("Text" & i).Text = Split(s, ",")(i) Next ところでVBでのバイナリデータの暗号化方法を誰か教えて。 capicomではバイナリの暗号化は無理ですの? お金かけずに作りたいのでCryptLightは無しの方向でお願いしまっす。
829 名前:デフォルトの名無しさん mailto:sage [04/09/11 05:05:47] 他のアプリで押された特殊キーの状態とかをトリガにして処理開始したいのですが vbで他のアプリで押されたキーの状態とか取得できますか? よくわかってないんですが自分のプロセスならwinprocとかでメッセージ拾って なんかできそうなんですが。。。
830 名前:デフォルトの名無しさん [04/09/11 11:55:20] 特殊キーを押すアプリがあるとは知らなかった。。 【こんなアプリはイヤだ】 モニタから手が出てきて特殊キーを勝手に押すアプリ
831 名前:デフォルトの名無しさん mailto:sage [04/09/11 13:06:57] >>828 それ本当にやってみた? controlsはインデックスだから名前入れらんねーんだけど ここはvb.netでvbaのスレじゃねーですぜ (vbaじゃそれ重宝してたんだけどね)
832 名前:デフォルトの名無しさん mailto:sage [04/09/11 14:05:36] Handlesキーワードで指定されたイベント(Button1.Click, Form1.Load)を取得する方法ってありますか?
833 名前:デフォルトの名無しさん mailto:sage [04/09/11 14:47:06] なんかイベントハンドラのコレクションを取得するメソッドだったかがあったような気がする。
834 名前:832 mailto:sage [04/09/11 15:13:50] >>833 ありがとうございます。 一度調べてみます。
835 名前:デフォルトの名無しさん mailto:sage [04/09/11 16:03:51] TCPでの送受信を勉強してるんだけど、チャットを作るとしたら 送信用と受信用を別Threadにして役割分担させるのが妥当なのかな? 普通にNetworkStreamを使うと、受信しようとしたとたん他のことができなくなっちゃうよね? VB.NETで簡単なチャットを作ることを教えてるサイトないかな?勉強用に見たい。
836 名前:814 mailto:sage [04/09/11 20:44:06] >>825 >>826 >>827 ん〜 結局できるのかできないのかさえわからん。 できないって言う人の方が多いな。
837 名前:デフォルトの名無しさん mailto:sage [04/09/11 20:58:25] 少なくとも、MemberwiseCloneなどを利用してとか単純な方法では出来ない。 >>822 とかみたいに強引に実装したらできるかもしれない。
838 名前:デフォルトの名無しさん mailto:sage [04/09/11 21:36:58] すみません。 コマンドでipconfig /releaseと/renewがあると思うのですが、VBで実行するには どうしたらいいのでしょうか?結果まで出力出来れば嬉しいのですが。 ネット等で探したのですがコマンドの実行すら探しだせませんでした。
839 名前:814 mailto:sage [04/09/11 21:55:41] >>837 ふむふむ。わかりました。 ありがとうございました。
840 名前:デフォルトの名無しさん mailto:sage [04/09/11 22:27:28] >>838 おまいが分からないのは、 ・そもそもプロセスの起動方法 ・起動するプロセスへのコマンドラインオプションの渡し方 ・結果の取得の仕方 ・ipconfigがなんかおまいに取って特殊で、ipconfigに関して分からない どれだ?
841 名前:838 mailto:sage [04/09/12 00:06:40] >>840 多分、コマンドラインオプションの渡し方と結果の取得が 分からないです。あとは大体分かるので。
842 名前:デフォルトの名無しさん mailto:sage [04/09/12 01:15:52] >>841 こちょこちょと書かないで今どんな風にやってるのかとか書いて欲しいなあ。 ※何が分からんのか分からないんだよね。 Processクラスで起動してるって事でいい? コマンドラインオプションはメソッドでもろに指定できるやつがあるけど、 指定の仕方がわからない? 結果の取得(こっちは標準出力の取得とみなして…)等の細かい制御をするには、 ProcessStartInfoクラスを使う必要があったはずだと思う。 っていうか、ProcessStartInfoのヘルプ見たらほとんど分かるんじゃない?
843 名前:デフォルトの名無しさん mailto:sage [04/09/12 01:17:43] >>841 っていうか、多分てなんだよ多分て…
844 名前:最凶VB厨房 mailto:sage [04/09/12 03:47:10] >>835 見たか?非同期でどぞ。 www.microsoft.com/japan/msdn/library/?url=/japan/msdn/library/ja/cpguide/html/cpconSocketCodeExamples.asp?frame=true
845 名前:デフォルトの名無しさん mailto:sage [04/09/12 03:52:03] textboxやrichtextbox内の文字の中から、特定の文字列だけの色を変える方法はどうやれば良いのでしょうか? 例えば、htmlソースのタグや、cソース内の予約語の色を変えたりです。 TextChanged内に記述する形で タグや予約語を認識すると、その部分のみ色を変更という形をイメージしているのですが 具体的にどうやれば良いのかわからないので、どうかご教授お願いします。
846 名前:デフォルトの名無しさん mailto:sage [04/09/12 05:55:21] 他のアプリケーションがOSにスタンバイ要求を出したり、スタート メニューから[終了オプション]-[スタンバイ]を選んだりした時に それを検出して、本当にスタンバイしたいのかどうかを確認する ダイアログを表示、スタンバイしたくなければそれを中止するモノ を作りたいと思っているのですが、 AddHandler SystemEvents.PowerModeChanged, _ AddressOf SystemEvents_PowerModeChanged すれば、スタンバイに入ろうとしていることを検出するところまでは わかりました。この後、スタンバイを中止する方法がわかりません。 (ダイアログを表示したところでスタンバイに移行してしまいます) どなたか教えていただけないでしょうか。
847 名前:デフォルトの名無しさん mailto:sage [04/09/12 06:20:27] >>844 サンクス。がんがってくる
848 名前:デフォルトの名無しさん [04/09/12 12:45:35] ピクチャーボックスを複数使ってビューアのようなものを作っているのですが、 PictureBox1.Image = New Bitmap(strPicture_File_Path) や PictureBox1.Image = Image.FromFile(strPicture_File_Path) のように 画像ファイルを読み込むときに画像ファイルのサイズが大きい場合、かなり時間がかかるんです。一枚ならまだいいんですが、複数の画像を各々Imageに読み込みたいため、かなり遅く感じます。これを早くする方法はありますか? 回答をお待ちしております。お願いいたします。
849 名前:812 mailto:sage [04/09/14 16:41:22] >>813 できました! ありがとうございます。 起動したフォームだけじゃなくそこから開いた別のフォームでも エラー処理をトラップすることができました。
850 名前:デフォルトの名無しさん mailto:sage [04/09/14 17:33:33] >>848 メモリを増設
851 名前:デフォルトの名無しさん [04/09/14 18:08:08] 質問です。 フォームの中にテキストボックス等のコントロールが複数あるのですが、 実行時にフォームのサイズが変更された場合、コントロール間の距離を保ったまま コントロールの大きさを変更させたいのですが、どうしたらよいですか? Anchorの対象をフォームではなく他のコントロールにするみたいな感じです。
852 名前:デフォルトの名無しさん [04/09/14 20:54:23] >>851 質問です。 試行錯誤してますか?そうは思えませんが。。 そんな質問をする自分を恥には思いませんか?
853 名前:デフォルトの名無しさん mailto:sage [04/09/14 21:08:24] あ〜明日VBの試験だあ〜
854 名前:デフォルトの名無しさん mailto:sage [04/09/14 21:31:19] まあそう言わず。 >>851 パネルかなんかにぶっこむのが楽でねぇ?
855 名前:デフォルトの名無しさん [04/09/14 22:04:10] >>850 違うと思います。 何か違うやり方とか
856 名前:デフォルトの名無しさん mailto:sage [04/09/14 22:10:24] >>855 俺も >>850 が正解かと思ったけど。 どれくらいのサイズの画像を何枚くらい読み込もうとしてるの?>>848 そもそもディスクが遅いっていうオチじゃ嫌よ。
857 名前:デフォルトの名無しさん [04/09/14 22:56:02] >>856 読み込む画像は基本的に1MBくらいのJPGを5枚です。 マシンもPentium M(1GHz)、メモリも756MBだし。そこそこ最近のですよ。 普通にあるのフリーのビューアーだってストレスのない早さなのに 自作のプログラムが遅いのは不満です。 何かいい方法はありませんか? 例えば、ファイルを並行に読み込むとか??
858 名前:最凶VB厨房 mailto:sage [04/09/14 23:11:42] www.microsoft.com/japan/msdn/library/?url=/japan/msdn/library/ja/cpguide/html/_gdiplus_Improving_Performance_by_Avoiding_Automatic_Scaling_usecsharp.asp?frame=true
859 名前:デフォルトの名無しさん [04/09/15 00:28:53] >>858 ありがとうございます。 でも、このやり方でやっています。 そもそも Dim image = New Bitmap("Texture.jpg") の処理に時間がかかっているのです。
860 名前:デフォルトの名無しさん mailto:sage [04/09/15 00:50:28] そこそこ精度の高いFAXTIFをImage.FromFileで読み込んだけど そんなに遅くなかった気がする 512MB 1.1GHz そのイメージをファックスドライバに送ってファックス送信した
861 名前:デフォルトの名無しさん mailto:sage [04/09/15 00:50:37] すみません,>>845 解る方いらっしゃらないでしょうか(´Д`)
862 名前:最凶VB厨房 mailto:sage [04/09/15 01:56:26] www.microsoft.com/japan/msdn/library/?url=/japan/msdn/library/ja/cpref/html/frlrfSystemWindowsFormsRichTextBoxClassSelectionColorTopic.asp?frame=true は? textboxは部分文字列は色変更できないはず。
863 名前:デフォルトの名無しさん mailto:sage [04/09/15 01:58:27] >>857 1MBのJPGを読み込めば、メモリ上では50〜100MBとかになる。 850のレスに対してはスワップの発生状況について言及すべき。
864 名前:845 mailto:sage [04/09/15 03:52:07] >>862 助言ありがとうございます RichTextBox.SelectionColorプロパティをどのように応用すれば>>845 を実現できるかはまだわかりません(´・ω・`) もうちょっと頑張ってみます。 >textboxは部分文字列は色変更できないはず。 なるほど、そうでしたか。失礼しました。
865 名前:851 mailto:sage [04/09/15 10:24:07] なるほど、panelというものを使えば簡単にできるのですね。 ちょっと触ってみた感じ、いまいちどう使うのかわかりませんでしたがやってみます。 コントロール間の距離を測っておいてフォームのサイズを変えたときに各コントロールの位置と大きさを 再設定すればできるだろうか?とかそんなことばかり考えていました。(できなかったわけですが) どうやら簡単にできることのようなので、こんな質問をしてしまって恥ずかしく思います。 まだまだ試行錯誤が足りなかったようです。 答えていただきありがとうございました。
866 名前:デフォルトの名無しさん mailto:sage [04/09/15 23:06:43] 本でわからないところがあります。 引用 --------------------------------- If x > 10 AndAlso y < 10 Then z = x + y MessageBox.Show(z.ToString) End If 上記の例では、最初に、前者の条件式「x > 10」を判定します。 条件式「x > 10」が不成立であるならば条件式全体に「False」を返し、 命令文「z = x + y」を実行します。条件式「x > 10」が不成立である ならば、後者の条件式「y < 10」の判定を行ないます。 --------------------------------- 文章後半、「命令文〜判定を行います。」 のあたりがよくわかりません。 最初の条件がFalseの時は命令文もつぎの条件判定も飛ばすんですよね?
867 名前:デフォルトの名無しさん mailto:sage [04/09/15 23:13:16] >>866 明らかに誤植。 文章もひどい。「不成立であるならば」なんて直訳。
868 名前:デフォルトの名無しさん mailto:sage [04/09/15 23:20:36] >>866 そんな命令があるの初めて知ったよ。 見てるだけでも勉強になるな。 参考に ttp://www.atmarkit.co.jp/fdotnet/vb6tonet/vb6tonet06/vb6tonet06_01.html
869 名前:866 mailto:sage [04/09/15 23:25:19] >>867 レスありがとうございます。 やっぱり誤植なのですか・・。 。・゚・(ノД`)・゚・。 誤植にしてはアレすぎるので何かひどい勘違いをしているものと 思っていました。 一応日本人の書いた本なのですが、 用語(?)自体が直訳風ということでしょうか?
870 名前:デフォルトの名無しさん mailto:sage [04/09/15 23:34:37] >>868 おもしろいリンク先の紹介、ありがとうございます。 ver.6では変わった演算子があったんですね。
871 名前:デフォルトの名無しさん [04/09/16 06:59:50] >>866 Basicの困った仕様を.NETで吸収するのに開発者は 苦労しただろうね。 ここまでして、「VB」にこだわる必要があるのか疑問に なってしまう。 ただいまでも、ほとんど一緒でもBasicと名の付く方を 選択する人はかなりいるんだろうね。
872 名前:デフォルトの名無しさん mailto:sage [04/09/16 12:38:48] >>869 こういうのは、だいたい英語のネタがあって、それのパクリかも。 誤植というか、2〜3行抜けてる感じ。 手書きならともかく、最初からパソコンで原稿書いてれば起きないはずなんだけど。 できるだけ原文に即して直すとしたら、こういう感じかな。(悪文だけど。) 上記の例では、最初に、前者の条件式「x > 10」を判定します。 条件式「x > 10」が不成立であるならば条件式全体に「False」を返し、 条件式「x > 10」が成立であるならば、後者の条件式「y < 10」の判定を行ないます。 後者で、条件式「y < 10」が成立であるならば、命令文「z = x + y」と 「MessageBox.Show(z.ToString)」を実行します。
873 名前:デフォルトの名無しさん mailto:sage [04/09/16 12:42:56] AndAlso と OrElse か。 VB6でも最適化コンパイル時にそういう処理をしてると思ってたんだけど。 .NET Frameworkで動くのに、わざわざ命令を追加するほどの意味があるのかな。
874 名前:デフォルトの名無しさん [04/09/16 13:07:25] >>873 .NET Frameworkで動かすために追加せざるを得なかったんでしょ。
875 名前:デフォルトの名無しさん mailto:sage [04/09/16 14:31:54] >>874 なるほど、C#にそろえるためか。
876 名前:デフォルトの名無しさん mailto:sage [04/09/16 16:19:38] >>873 A, B が関数だとして、 A And B と A AndAlso B ではだいぶ意味が違ってくると思う。 AndAlso の使いどころは、例えば Not IsNothing(form1) AndAlso form1.Visible とか。
877 名前:VB.NET始めて2日目 [04/09/16 17:19:22] 研修の身分でVB.NETの課題を昨日から始めた初心者ですが、 早速テンパってしまったのでお聞きしたいです。 課題内容:エンターキーが押された際に順番通りにフォーカスを移動させる フォーム内容:TextBoxが6個並んでいる 以上の内容となるのですが、どの様にすれば課題内容を網羅出来るものが出来るのでしょうか 出来れば、極力簡単な言葉でお教え頂けないでしょうか
878 名前:デフォルトの名無しさん mailto:sage [04/09/16 17:21:40] 自分でやらなければ研修の意味がない。 給料を払う価値もない。 以上
879 名前:デフォルトの名無しさん mailto:sage [04/09/16 17:29:32] ワラタ
880 名前:デフォルトの名無しさん mailto:sage [04/09/16 17:50:42] EnterKeyをTabKeyに入れ換える 内緒 Function 内緒(内緒) As 内緒 If 内緒 = 内緒 Then 内緒(内緒) 内緒(内緒) 内緒 = 内緒 End If 内緒 = 内緒 End Function 簡単だな 俺はEnterKeyでフォーカスを移動するのは嫌いだな
881 名前:デフォルトの名無しさん mailto:sage [04/09/16 17:54:16] 漏れは単純な数字を沢山入れるタイプのAPなら、 Enterでフォーカスが移動するのは悪くないと思う。 Excel もそうだけど気にならないし。 でもそーいう業務アプリ設計してると、他に「実行」キーが欲しくなるという罠
882 名前:デフォルトの名無しさん mailto:sage [04/09/16 17:56:23] キーフ○○ヒ゛ュー
883 名前:VB.NET始めて2日目 [04/09/16 19:17:06] 解決致しました。 皆さんどうもありがとう御座いました。
884 名前:デフォルトの名無しさん [04/09/16 21:08:27] 179 名前: VB.NET始めて2日目 投稿日: 04/09/16 17:47:47 研修の身分でVB.NETの課題を昨日から始めた初心者ですが、 早速テンパってしまったのでお聞きしたいです。 課題内容:エンターキーが押された際に順番通りにフォーカスを移動させる フォーム内容:TextBoxが6個並んでいる 以上の内容となるのですが、どの様にすれば課題内容を網羅出来るものが出来るのでしょうか 出来れば、極力簡単な言葉でお教え頂けないでしょうか 180 名前: VB.NET始めて2日目 投稿日: 04/09/16 19:16:11 自己解決しました。 お騒がせ致しました。
885 名前:デフォルトの名無しさん mailto:sage [04/09/16 21:27:23] .NETでも所詮はブビ廚
886 名前:デフォルトの名無しさん mailto:sage [04/09/17 11:04:50] VS2005Beta1を検証PCにインストールしたけどめちゃ重くて使えません。 CPUは2ギガです。とりあえず環境はMDIにしてプロパティのドッキング解除して・・・重っ!! ほんとにみんなこんな開発環境で仕事してるんでしょうか? WindowsXPでLUNAをやめてクラシックデザインにした時の様に VS.NET自体の動作を軽くする環境設定ってありますか? どなたかご存知でしたらレスをお願いします。 VS2005Standardって早く試してみたい・・・
887 名前:デフォルトの名無しさん [04/09/17 14:57:06] PublicSub frmPrint(略) TextBox1.text=Module.AAA TextBox2.text=Module.BBB TextBox3.text=Module.CCC End sub で呼び出す変数をまとめてモジュールを↓のようなModule.vbにしまってあるのですが、 Module DataModule Public AAA As Integer Public BBB As String Public CCC As Decimal End Module これを、のAAA,BBB,CCCの内容を利用した後、ボタンを押す事で AAA = 0 BBB = "" CCC = 0にしたいのですが、ボタンを押したときに全部の変数の初期値を書き込んでやると 方法しかないのでしょうか? Module自体を初期化という命令を探しているのですが、なかなか見つからずに困っていま す。
888 名前:デフォルトの名無しさん mailto:sage [04/09/17 15:22:35] >Module自体を初期化という命令 そんなもんはねえ。 初期化用のメソッドを自分で作る。 ※せめて使う側からそれぞれを初期化するのはやめれ まあそれ以前にこんなグローバル変数の使い方はどうかと思うが。 せめてクラスにしてインスタンスをグローバルで持たせるか… それならインスタンス作り直して変数を上書きすれば初期化もできるし。
889 名前:887 [04/09/17 15:44:22] >>888 ありがとうございます。なにせ初めてプログラムを組んでいるので、かなり手探りで 作っています。Moduleに変数を入れるのをグローバル変数と呼び、あんまり推奨 されないというのも、いまGoogleで知りました。 大昔の行数ラベルの付いたHu−BASICしか触った事がないので、判らないことだ らけで難渋しております。
890 名前:デフォルトの名無しさん mailto:sage [04/09/17 18:25:35] はどそんべーしっく
891 名前:デフォルトの名無しさん mailto:sage [04/09/17 23:34:06] ワロタw
892 名前:デフォルトの名無しさん [04/09/18 00:30:25] .NETで開発している人に質問なんですが、 InputManってよく使いますか? もしくは他の入力制御系のコントロール使ったりします?
893 名前:デフォルトの名無しさん [04/09/18 11:43:03] Inheritsってなんて読むんですか?
894 名前:デフォルトの名無しさん [04/09/18 12:22:11] .netのグラフィックではXOR描画がサポートされていないようだけど、 マウスドラッグで線を引く時に、一時的な線をマウスの動きに合わせて 表示消去を繰り返すような処理をどうすればできる? ビットマップの切り替えとかで出来るのかなぁ。
895 名前:デフォルトの名無しさん mailto:sage [04/09/18 12:44:14] 愚レイプ指定は駄目駄目。
896 名前:デフォルトの名無しさん [04/09/18 14:34:42] 頭虫邸みたいだな
897 名前:デフォルトの名無しさん [04/09/18 17:55:40] 今日、VB.NETを購入してインストールしたんですけど 起動してみたところ、悪質なスクリプトを検出したと、ノートンが働いてしまいます devenv.exeというプログラムなんですけど、許可してもいいんでしょうか?
898 名前:デフォルトの名無しさん [04/09/18 18:16:36] 学生じゃないけどアマゾンでアカデミックパック購入しようかな、と思ってます。 (店頭だと学生証表示しる、とか言われそうなので) インストールとか登録時に変な確認ないよね・・??誰か教えて。
899 名前:デフォルトの名無しさん mailto:sage [04/09/18 19:54:57] >>898 少し前までそういうスレがあったんだけどね。ソフト板に。
900 名前:デフォルトの名無しさん mailto:sage [04/09/18 20:16:52] >>899 ありがとう。発見しますた。
901 名前:デフォルトの名無しさん [04/09/18 20:23:39] Visual Stdio買わずにOutlookのCOMアドインを作りたいんだが、 .NET Framework SDKだけで作れますか?
902 名前:デフォルトの名無しさん mailto:sage [04/09/18 20:56:04] コマンドラインでコンパイルすればOK フリーの.NETツールもある
903 名前:デフォルトの名無しさん mailto:sage [04/09/18 21:33:16] >>892 TextBox継承して作れば、必要なし。 つか、よくあんなもの金出して買うな。
904 名前:デフォルトの名無しさん mailto:sage [04/09/18 22:24:12] >>902 ありがとうございます。 いろいろいじってみたんだが、必要なコマンドラインオプションがわかりません。 雛形とかを教えてもらえるとありがたいのですが。 ----- Option Explicit Implements IDTExtensibility2 ----- C:\>vbc /t:library /r:addindesignerobjects.dll hoge.vb では名前空間のステートメントが無効です、と言われるんですが。
905 名前:デフォルトの名無しさん mailto:sage [04/09/18 22:29:15] >>904 sharpdevelop-jp.sourceforge.jp/index?FrontPage これフリーで使える開発ツールだからこれ使ってみては?
906 名前:デフォルトの名無しさん mailto:sage [04/09/18 23:50:28] >>905 なんとなくわかってきた。ありがとうございます。 動かないけどコンパイルは通るようになったみたい。 もうちっと探ってみまず。
907 名前:デフォルトの名無しさん mailto:sage [04/09/19 00:39:38] コンパイルが通るけど動かないとは、これ如何に?
908 名前:デフォルトの名無しさん mailto:sage [04/09/19 01:59:21] >>907 動くけどコンパイラが通らない っていうのよりはマシだと思う
909 名前:デフォルトの名無しさん mailto:sage [04/09/19 02:07:30] >>908 あ り え な い
910 名前:デフォルトの名無しさん mailto:sage [04/09/19 02:16:45] >>907 レジストリの登録が必要だったりするらしいので。 つうか、 Implements IDTExtensibility2 って書いたらコンパイルできなくなった。 BC30149: 'Class1' は、インターフェイス 'Extensibility.IDTExtensibility2' に対して 'Overridable Sub OnAddInsUpdate(ByRef custom As System.Array)' を実装しなければなりません。 どこのサンプルコードみてもOverridableなんて書いてないのに。。。 ろくにVBを知らないのにアドインつくろうなんて無謀なんだろうけど、 まだまだ先は長いな。
911 名前:デフォルトの名無しさん [04/09/19 12:25:18] はじめまして。 VB.net (2002) でコンソールアプリを組んでいるのですが、 Ctrl+C のトラップ方法がわかりません。 コンソールプログラム実行中に Ctrl+C を押すと Try Catch Finally で囲んでいても終了コードを実行 する間もなく強制終了してしまいます。 どなたかトラップの方法をご存知でしたら教えて いただけないでしょうか。 宜しくお願いします。
912 名前:デフォルトの名無しさん mailto:sage [04/09/19 13:50:09] >>909 いやいや、「ありえない」にもかかわらず「そうなった」と言うのだから ひどい、「それよりはましだ」と言いたいのであろう。
913 名前:デフォルトの名無しさん [04/09/19 19:58:42] 質問です。 VB.NETからWindows SharePoint Services のリストの機能を使って、 リストの内容を取得しようとしているのですが、サンプル通りに記述しても動きません。 HTTP401エラーが発生しているようです。 IISの認証はクリア出来てそうなのですが、 (イベントログのセキュリティはログインしたことになっているようです) IIS⇒ASP.NETの認証でエラーになっているのではないかと思います。 環境は以下です。 SharePointが乗っているサーバー OS Windows 2003 IIS/ASP.NET 開発しているPC OS Windows 2000 リモートからの取得自体が無理なんでしょうか。 それとも、どこかの設定で認証をクリアー出来るのか、ご教授下さい。 よろしくお願いします。
914 名前:デフォルトの名無しさん [04/09/19 22:22:23] 先生、質問です。 VB.NETから、VBScriptとかJScriptとか何でもいいんで、スクリプトって使えますか? 例えば、 Private Sub Hoge() As Long Hoge = 1 End Sub って、テキストファイルに書いたのを、プログラム実行中に読み込んで、 実行することは可能ですか?
915 名前:デフォルトの名無しさん mailto:sage [04/09/19 22:23:30] 質問ばっか
916 名前:デフォルトの名無しさん mailto:sage [04/09/19 22:59:35] >>915 質問スレだからな
917 名前:デフォルトの名無しさん mailto:sage [04/09/19 23:00:39] >>914 VB.NET とは関係ないし、 簡単には無理
918 名前:デフォルトの名無しさん mailto:sage [04/09/19 23:04:59] 署名付きクラスライブラリ(VBで作成)を、任意の(C:\common_dll\下)に 配置しようと思っています。 web等を参考にしながら以下の方法で試して見たのですが、上手くいきません。 対応策を教えていただけないでしょうか? 1.keypairの作成 dos>sn -k key.snk 2.クラスライブラリのAssemblyInfoに追加 assembly: System.Reflection.AssemblyKeyFile("./key.snk") assembly: System.Reflection.AssemblyVersion("1.0.0.0") assembly: System.Reflection.AssemblyCulture("neutral") #ここまでで署名付きのクラスライブラリの作成には成功しています。 #GACへ登録しての起動も確認できました。
919 名前:つづきです mailto:sage [04/09/19 23:05:44] 3.キートークンの抽出 dos>sn -t key.snk 4.AP.exe.configの作成し、AP.exeとおなじフォルダに配置 <?xml〜> <configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="testdll" publicKeyToken="32ab4ba45e0a69a1"←3.で抽出したトークン culture="neutral" /> <codeBase version="1.0.0.0" href="C:\common_dll\testdll.dll"/> </dependentAssembly> </assemblyBinding> </runtime> </configuration> どなたかお願いします。
920 名前:デフォルトの名無しさん mailto:sage [04/09/19 23:13:58] hrefだからfile://とかのurlにしないといけないとかって落ちはない?
921 名前:918 mailto:sage [04/09/19 23:18:01] ありがとうございます。 一応file://〜も確認してみたのですが駄目でした。 相対パスでもです。
922 名前:デフォルトの名無しさん mailto:sage [04/09/19 23:42:07] サブクラス化について SetWindowLongで GWL_WNDPROC ウィンドウプロシージャのアドレスを書き換えます。 Windows NT/2000:この属性は、ウィンドウが関数を呼び出したスレッドと同じプロセスに属していないと変更できません。 とSDKに書いてあるんだけど、WndProcの書き換えはc++じゃないと出来ないのかな? VB.NETでは他の方法でも無理でしょうか??
923 名前:デフォルトの名無しさん [04/09/20 00:05:12] >>922 君みたいな人不思議でしょうがないんだけど、 なんで人に聞く前にMSDN当たらないわけ?頭不自由なの?寂しがりやなの? ヤフオクでMSDNなしの「ボリュームライセンス」品を手に入れたの? それにしたってwebのがあるよねえ。 www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemwindowsformscontrolclasswndproctopic.asp
924 名前:デフォルトの名無しさん mailto:sage [04/09/20 00:18:08] というかそもそも、 >とSDKに書いてあるんだけど、WndProcの書き換えはc++じゃないと出来ないのかな? >VB.NETでは他の方法でも無理でしょうか?? という判断を下した理屈が知りたい。
925 名前:デフォルトの名無しさん mailto:sage [04/09/20 00:27:47] >>921 どううまくいかないのか詳細を書いてくれないか?
926 名前:デフォルトの名無しさん mailto:sage [04/09/20 00:35:13] ありがとうございます。 DLLが見つからないということでexeが起動できません。
927 名前:デフォルトの名無しさん mailto:sage [04/09/20 00:37:26] DLLが見つからなくて云々てのは初めから分かっとる。 エラー(例外)メッセージの詳細をかけって言ってるのが分からんかい? アセンブリをロードするときのログが例外のメッセージに含まれてないか?
928 名前:デフォルトの名無しさん mailto:sage [04/09/20 00:43:45] 今その環境がなくて詳しいことはかけません。 ただconfigファイルを使わずにGACに登録していれば正常に起動はできていましたので、 configファイルの記述ミスではないだろうかと思っています。
929 名前:デフォルトの名無しさん mailto:sage [04/09/20 00:50:17] アセンブリをロードしようとしてるときのログを見れば、 どんなパスからロードしようとして失敗したかがわかるはず。 確かロード関連で例外が出たときにはメッセージに含まれてたと思うが、 もし出てない場合はfusionlogってな名前のログを見ればいいんだったかな、たしか。
930 名前:デフォルトの名無しさん mailto:sage [04/09/20 01:05:43] おおー参考になります まずはどのパスを確認しにいってるのか、そのログで確認してみます。
931 名前:デフォルトの名無しさん mailto:sage [04/09/20 01:33:02] >>923 スンマソ 一番大事な事書き忘れてました ”別スレット”゙のWndProc書き換えです グローバルフックはVB.NETでは出来ないみたいですね
932 名前:デフォルトの名無しさん mailto:sage [04/09/20 03:24:47] 出来るから
933 名前:デフォルトの名無しさん mailto:sage [04/09/20 09:24:13] ヘルプには出来ないって書いてるしなぁ うーん
934 名前:デフォルトの名無しさん [04/09/20 11:16:26] ていうか >”別スレット”゙のWndProc書き換えです コレ、何言いたいのかサッパリわかんないんだが俺だけか?
935 名前:デフォルトの名無しさん mailto:sage [04/09/20 12:56:54] >>934 自前のアプリから、メモ帳とかに入力されたキーボード入力やマウスの動きを横取りしたいって事デス
936 名前:デフォルトの名無しさん mailto:sage [04/09/20 13:00:04] スレッドとプロセスの区別がついとらん。
937 名前:デフォルトの名無しさん mailto:sage [04/09/20 14:27:24] だめか。
938 名前:デフォルトの名無しさん mailto:sage [04/09/20 15:14:43] >>935 helpにも書いてある通り.NETでは無理。VC++でDLL作成するなら可能 ttp://www.kumei.ne.jp/c_lang/sdk2/sdk_161.htm
939 名前:913 mailto:sage [04/09/20 17:00:22] 何でもいい、憶測でもいいから。 誰か答えてください。
940 名前:デフォルトの名無しさん mailto:sage [04/09/20 19:01:48] よし、俺が答えてやろう まずは、色々と勉強してこい 話はそれからだ
941 名前:デフォルトの名無しさん mailto:sage [04/09/20 19:34:50] ListViewコントロールってユーザが編集できるのはTextだけ? SubItemsの中身も編集できるようにしたいんだけど、無理ぽ?
942 名前:901 mailto:sage [04/09/21 13:47:08] 901です。教えてください。 MSDN Onlineのサンプルとか見ながらExtensibility2インターフェースの OnAddInsUpdate、OnStartupComplete、OnBeginShutdown、OnConnection、OnDisconnection の各メソッドを実装して、できたdllをCOM登録するところまではやったんだけど、 いざOutlookでCOMアドインを追加しようとすると hogehoge.dllは有効なOfficeアドインではありません。 ってエラーになるんだけど、なんでかな。 ほかに何が必要ですか?
943 名前:デフォルトの名無しさん mailto:sage [04/09/21 21:33:53] 委託先企業・・・どこだろ
944 名前:デフォルトの名無しさん mailto:sage [04/09/21 21:35:11] はげしく誤爆。スマソ
945 名前:デフォルトの名無しさん [04/09/22 00:11:22] たとえばwavファイルをバイナリで開いて編集するのって、 いったいどうやるんですか??><
946 名前:デフォルトの名無しさん mailto:sage [04/09/22 01:42:45] >>945 jpgをバイナリで開いて編集するよりむずかしい。
947 名前:デフォルトの名無しさん [04/09/22 02:09:57] >>946 たとえが悪かったみたいです^^; 軽いファイルを、16進数でダンプ表示させたいんですけど、調べても調べても・・・ 助言くださるととてもありがたいです><
948 名前:デフォルトの名無しさん mailto:sage [04/09/22 10:51:27] >>947 簡単に見つかるはず。もっと探せ。
949 名前:デフォルトの名無しさん mailto:sage [04/09/22 10:52:10] >>947 0から15を16進表示、というのは出来るのか?
950 名前:899 [04/09/22 12:35:14] >>947 >調べても調べても・・・ 絶対ウソだと思うこれ。そうでなければよほど…(自主規制 www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconstandardnumericformatstrings.asp
951 名前:デフォルトの名無しさん mailto:sage [04/09/22 14:17:19] >947 www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/dnguinet/htm/drguinet09042001.asp まさかな・・・ www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&q=vb%2Enet+%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB+%E3%83%80%E3%83%B3%E3%83%97 4つめ・・・
952 名前:デフォルトの名無しさん mailto:sage [04/09/23 00:59:14] textboxの入力チェックにvalidatingイベントを使用しています tabやボタンのクリック時にはちゃんとチェックできるのですが formのkeypreview=trueでformのkeydownイベントで If e.KeyCode = Keys.F1 Then MessageBox.Show("f1") End If とすると、textboxのvalidatingイベントは素通りしてしまってチェックできません 何かいい知恵ないでしょうか? 別にチェックするルーチン作ってやるしかないのでしょうか?
953 名前:デフォルトの名無しさん mailto:sage [04/09/23 01:40:54] 素通りってあんたどのタイミングでチェックされるかわかっていってるか?
954 名前:デフォルトの名無しさん mailto:sage [04/09/23 02:06:21] >>953 textboxのleaveイベントの直後にvalidating 素通りするのは仕様だから仕方ないですけど 上のコードのようにformでキー拾って更新ってありがちな処理ですけど 皆さんはどうやってデータチェックしてるのかなと チェックする関数作ってvalidatingと更新前と呼び出ししたりしてるのかな?
955 名前:デフォルトの名無しさん mailto:sage [04/09/24 12:52:45] ちょっと質問 www.microsoft.com/japan/msdn/scripting/default.asp のScriptControlってVB.NETでも使えますか? VB6.0の頃は使えてたんだけど、VB.NETでどうなのか知りたいです
956 名前:デフォルトの名無しさん mailto:sage [04/09/24 23:09:30] NOTIFYICONDATAの構造体にhIconがあるんですが あれは何で宣言すればいいのでしょうか? As Iconで宣言すると 型 NOTIFYICONDATA のフィールド hIcon を集成できません : このフィールドの型の定義にレイアウト情報がありません。 というエラーが出るし、Icon以外で宣言しようとすると型が違うって 言われます。 分かる方よろしくお願いいたします。
957 名前:デフォルトの名無しさん mailto:sage [04/09/25 00:25:31] >>956 IntPtr。Icon の Handle プロパティにある奴ね。
958 名前:デフォルトの名無しさん mailto:sage [04/09/25 04:22:57] >>957 どうにかコンパイルは通りましたが、 実行中にエラーが出てしまいます。 Dim udtNotifyIconData As New NOTIFYICONDATA Dim lngResult As Long With udtNotifyIconData .cbSize = Len(udtNotifyIconData) .hwnd = Me.Handle .uID = 0 .uFlags = NIF_MESSAGE Or NIF_ICON Or NIF_TIP .uCallbackMessage = WM_MOUSEMOVE .hIcon = Me.Icon.Handle .szTip = "Title" & vbNullChar Me.Visible = False End With lngResult = Shell_NotifyIcon(NIM_ADD, udtNotifyIconData) こういった感じでタスクトレイに表示させる命令を書いているんですけど、 hIconの命令がうまくいきません。 書き方が間違っていると思うんですけどもうお手上げ状態です。 よろしければご教授よろしくお願いいたします。 では、
959 名前:デフォルトの名無しさん mailto:sage [04/09/25 11:56:33] タスクトレイのアイコンならNotfiyIconコントロールを使えば簡単に表示できるのに・・・
960 名前:デフォルトの名無しさん mailto:sage [04/09/25 15:09:33] 958です。 >>959 うお、.Netってこんな便利なコントロールがあったんですか! thxです。早速使ってみます。
961 名前:デフォルトの名無しさん mailto:sage [04/09/25 20:59:34] .NETcompactFrameworkでシステムフォルダを取得するには? System.EnvironmentもSystem.Windows.Forms.Applicationも役にたたんかった・・orz
962 名前:デフォルトの名無しさん mailto:sage [04/09/25 22:26:42] part3-5の過去ログ持ってる方いたらどっかupしていただけないでしょうか?
963 名前:デフォルトの名無しさん [04/09/25 23:51:40] VBでサービスが作れると聞き、早速、本を買い込んで試してみました。 本によれば、「Windowsサービス」プロジェクトを選択するはずなのですが、 うちにあるVisual Studio .NET2003では作れません。 なぜ?VBだけのを買ったから? それとも、なにか別途インストールが必要なのか? どなたかご教授下さい。 よろしくお願いします。
964 名前:最凶VB厨房 mailto:sage [04/09/26 00:02:27] おそらくVBだけのを買ったからだろう。 が、まぁここでも ja.gotdotnet.com/quickstart/howto/doc/SimpleService.aspx
965 名前:デフォルトの名無しさん [04/09/26 18:30:05] Treeviewコントロールのノード部分にマウスカーソルをホバー させたときに、マウスカーソルを手の形に変えたいと考えて います。しかし、Treeviewコントロールの上にホバーしたとき、 というのはできるんですが、ノード部分のみ、という処理の 仕方が分かりません。ご教授のほど、よろしくお願いします。
966 名前:デフォルトの名無しさん mailto:sage [04/09/26 21:41:12] odbcデータアダプタの新しい接続でoracleを選ぶとこのバージョンではアクセスと SQLサーバが選べますみたいなメッセージ出るのだけど、これはVB.netスタンダード版 だからでしょうか(結局オラクルは選べないってことですか?) オラクルは8iです
967 名前:デフォルトの名無しさん [04/09/28 03:24:01] Visual Basic を手に入れたんですが、どうやったらゲームを作れるのでしょうか? 初心者というか何も知らない状態です。 いろんなスレやサイトを見たのですがさっぱりわかりません。 本などを見てみたのですがライブラリというのがなければつくれないんですか? また、ライブラリを手に入れる方法、使い方を教えてください。
968 名前:デフォルトの名無しさん mailto:sage [04/09/28 03:42:26] くぎと金槌を手に入れたんですが、どうやったら家が建てられるでしょうか 初心者(ry
969 名前:デフォルトの名無しさん mailto:sage [04/09/28 09:53:16] ファイル読み込みのときに指定したレコードのデータを読みたいのですが どうやって指定すればよいのでしょうか。 それとも、順番に読み込んでいく方法でしかできないのでしょうか?
970 名前:デフォルトの名無しさん mailto:sage [04/09/28 13:06:52] どうしてもプリンタの用紙サイズとそのIDが必要なので、 (標準のサイズではcustomになるため不可) <DllImport("winspool.drv", EntryPoint:="DeviceCapabilitiesA", _ CharSet:=CharSet.Ansi, ExactSpelling:=True, CallingConvention:=CallingConvention.StdCall)> _ Public Shared Function DeviceCapabilities(ByVal lpDeviceName As String, ByVal lpPort As String, ByVal iIndex As Integer, ByVal lpOutput As Integer, ByVal lpDevMode As Integer) As Integer End Function Private Const DC_PAPERS As Integer = 2 Private Function GetPaperInfo() as Integer Dim ptr As New IntPtr() Dim rc as Integer rc = DeviceCapabilities(vstrDevName, vstrPortName, DC_PAPERS, ptr, 0) とまではいくのですが、ここからコピーできません(涙) WORDの配列が帰ってくるはずで、戻り値も悪くないのですが・・・
971 名前:デフォルトの名無しさん mailto:sage [04/09/28 18:22:39] すみませんが、VB.NETで使用するSpreadに関する質問はここでよろしいでしょうか。
972 名前:971 mailto:sage [04/09/29 10:56:36] 駄目なようですね、すみませんでした。
973 名前:デフォルトの名無しさん mailto:sage [04/09/29 11:26:37] ずいぶんと我慢の出来ない奴だな
974 名前:971 mailto:sage [04/09/29 11:50:36] >>973 人が多そうな夜を挟んでも返答がなかったので、てっきり駄目かと……
975 名前:デフォルトの名無しさん mailto:sage [04/09/29 16:10:50] >>974 ム板は平日昼間のほうが多い。
976 名前:教えてください。。。 [04/09/29 23:25:52] リッチテキストボックスに表示されたhtmlのソースから 全てのfontタグを削除するコードを記述したいのですが、 fontタグを構成する文字列は固定されておらず、 "<font size=-1>"や、"<font color=#000000>"や、 "<font FACE="明朝">"など無数にあるために困っています。 "<font"とその直後に登場する">"との間の文字列を ""で置換すればよいと思うのですが、 一体どのようなコードを記述すればよいのでしょうか。 ご教示ください。
977 名前:デフォルトの名無しさん [04/09/29 23:44:03] >>976 正規表現
978 名前:デフォルトの名無しさん mailto:sage [04/09/30 13:55:25] Spreadの事で質問なんだけど、 TypeFloatSepCharとかTypeFloatDecimalPlacesとかのType〜って.NETだと何に置き換わってる? ヘルプの相違点で調べたんだけど、載ってなかったから。 よろしくお願いします。
979 名前:デフォルトの名無しさん [04/09/30 14:10:44] WindowsXPproでVisual Studio.Net2002のVB.NETを使っているのですが、 datagridの行と行の間の、各行の幅を調節するところでダブルクリックをすると、 ------------------------------------------------------------------------------------------ 'System.ArgumentOutOfRangeException' のハンドルされていない例外が mscorlib.dll で発生しました。 追加情報 : インデックスが範囲を超えています。負でない値で、コレクションのサイズよりも小さくなければなりません。 -------------------------------------------------------------------------------------------- というエラーが出てForm1の Option Explicit On Public Class Form1←ここで止まってしまいます。 しかも、すべてのdatagridでこのエラーが出るわけではなく、出るやつと出ないやつがあったりします。 ネットで調べたらttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=12359&forum=7&0に同じようなエラーの質問があったのですが、 ここで書かれているように設定段階でほぼまったく同じように設定したものでも、エラーになったりならなかったりします。 プログラムの中で調べようにもブレークポイントをどこに設定すればいいかもわからず、お手上げ状態です。 どうやればこのエラーを回避できるでしょうか? よろしくおねがいします。 DBはaccess2000でoledbdataadapterをもちいてデータを受け取っています。
980 名前:デフォルトの名無しさん [04/09/30 18:59:11] OS: Win2K Pro VB .NET 2003を使ってるのですが、 作ったソフトを別PCで起動するとこんなエラーがでるのですがどうしたらいいんでしょうか? (開発しているPCでは起動できる) hp.vector.co.jp/authors/VA030428/ss/error.png
981 名前:デフォルトの名無しさん mailto:sage [04/09/30 19:51:45] >>980 この辺一通り読んでみては? www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconcodeaccesssecurity.asp
982 名前:デフォルトの名無しさん mailto:sage [04/09/30 20:31:34] >>980 事故解決しました つーか馬鹿でした。
983 名前:デフォルトの名無しさん mailto:sage [04/09/30 22:53:58] スクリーンキャプチャーを撮る方法ってある??
984 名前:デフォルトの名無しさん [04/10/01 00:58:55] >>983 通報しました
985 名前:デフォルトの名無しさん mailto:sage [04/10/01 01:04:17] >>983 通報しましたー
986 名前:デフォルトの名無しさん mailto:sage [04/10/01 02:24:24] >>983 Close()