2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

VB.NET質問スレ (Part18)

1 :デフォルトの名無しさん:2006/10/19(木) 18:41:18
[前スレ]VB.NET質問スレ (Part17)
http://pc8.2ch.net/test/read.cgi/tech/1155292844/

2 :デフォルトの名無しさん:2006/10/19(木) 18:41:55
MSDN
http://msdn2.microsoft.com/ja-jp/library/ms229284.aspx

3 :デフォルトの名無しさん:2006/10/19(木) 18:42:31
どぼん!のVB道のトップページとTipsページ
http://dobon.net/vb/
http://dobon.net/vb/dotnet/index.html
Microsoftクイック スタート チュートリアル
http://ja.gotdotnet.com/quickstart/default.aspx
Insider.NET
http://www.atmarkit.co.jp/fdotnet/index.html
宇宙仮面の C# プログラミング
http://ukamen.hp.infoseek.co.jp/
.NET のつぼ
http://park16.wakwak.com/~mimi/dotnet/top.html
.NET TIPS
http://www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html
緑のバイク ★ 初めてのC# プログラム全般
http://homepage3.nifty.com/midori_no_bike/CS/
VB.NETとC#でデザインパターン
http://hccweb1.bai.ne.jp/tsune-1/
匣の向こう側
http://www.ne.jp/asahi/nami/mei/index.html
WisdomSoft
http://wisdom.sakura.ne.jp/
じゃんぬねっと
http://jeanne.wankuma.com/
どっとねっとふぁん - C# Tips And Samples -
http://homepage3.nifty.com/dotnetfan/index.html
C#プログラミングTips
http://www.atmarkit.co.jp/fdotnet/csharptips/index/csharptips_index.html
CodeProject
http://www.codeproject.com/vb/net/

4 :デフォルトの名無しさん:2006/10/19(木) 18:43:39
the GotDotNet Home Page
http://www.gotdotnet.com/
KEN's .NET
http://www5b.biglobe.ne.jp/~yone-ken/VBNET/index.html
Cetus Links: 19,498 Links on Objects and Components / .NET
http://www.cetus-links.org/oo_dotnet.html
HIRO's.NET
http://vbdotnet.fc2web.com/index.html
@IT:特集 .NET開発者のためのオンライン・リソース・ガイド
http://www.atmarkit.co.jp/fdotnet/special/onlineres/onlineres_01.html
.NETでいきまっしょい!
http://santamartadotnet.hp.infoseek.co.jp/
これがほしかった!厳選サンプルツール集
http://anetm.com/dev/tools/vbdotnet.htm
ぬーやんのdotNET講座
http://www.geocities.jp/nuu_yan/dotNET/index.html
PINVOKE.NET
http://www.pinvoke.net/
WinAPI Database for VB Programmer
http://www.geocities.co.jp/SiliconValley-Cupertino/5872/
Windows Api programming in C# , VB.NET, and VB6. Examples of P/Invoke and DllImport with Source code
http://custom.programming-in.net/
CodeZine
http://codezine.jp/

5 :デフォルトの名無しさん:2006/10/19(木) 18:44:15
ConvertCSharp2VB
http://www.kamalpatel.net/ConvertCSharp2VB.aspx
@IT:.NET Tools
http://www.atmarkit.co.jp/fdotnet/tools/index/index.html
SharpLibrary Redirector
http://www.sharplibrary.com/
MSDN アカデミック アライアンス 技術資料
http://www.microsoft.com/japan/msdn/academic/articles/
「300 秒でズバリ !!」&「10 行でズバリ !!」シリーズ
http://www.microsoft.com/japan/msdn/thisweek/wednesday/default.asp
PAPA'n VB
http://www.mitene.or.jp/~sugisita/index.html
VB レスキュー花ちゃん
http://www.bcap.co.jp/hanafusa/dotnet/index.html
(Java覚え書き)デザインパターンあれこれ
http://www.dmz.hitachi-sk.co.jp/Java/Tech/pattern/
algorithm
http://www.mnet.ne.jp/~tnomura/algorithm.html
ラムダ計算入門
http://www.kb.ecei.tohoku.ac.jp/~sumii/class/keisanki-software-kougaku-2005/lambda.pdf
数値計算の基礎
http://www7.ocn.ne.jp/~kawa1/numeric.pdf

6 :デフォルトの名無しさん:2006/10/19(木) 18:45:44
前スレ終盤の話題はこちらでどうぞ
全メソッドにtry〜catch〜finally〜
http://pc8.2ch.net/test/read.cgi/tech/1161229625/

7 :デフォルトの名無しさん:2006/10/19(木) 19:08:15
やっぱりダメな奴はなにやらしてもダメなんだよな。
プログラミングの腕は三流。
文章の読解力は小学三年生w

だから全部のメソッドをTryブロック内に書け、なんていってた奴は
一人もおらんからw

8 :デフォルトの名無しさん:2006/10/19(木) 21:38:48
DataTableのSelectメソッドで第2引数にSortを渡せますが、
列1+列2のような計算式付きのソート条件を指定すると、エラーになります。
MSDNから引用↓
【引数 filterExpression を作成するには、DataColumn クラスの Expression プロパティの値を作成するときと同じ規則を使用します。
引数 Sort は、クラスの Expression 文字列を作成するときと同じ規則も使用します。】
          ↑これもDataColumnクラス?
DataColumnのExpressionのように指定をしても駄目でした。
これは私の指定方法がおかしいのでしょうか?
わかる方よろしくお願いします。

9 :デフォルトの名無しさん:2006/10/19(木) 21:47:37
pictureboxのクリアーメソッドはどう使えばいいでしょうか?
clearcolor()の()内には何を入れればよいのでしょうか?
Public Sub ClearColor(e As PaintEventArgs)
' Clear screen with teal background.
e.Graphics.Clear(Color.Teal)
End Sub


10 :デフォルトの名無しさん:2006/10/19(木) 22:11:32
はぁ?

11 :デフォルトの名無しさん:2006/10/19(木) 22:13:53
無料のCoolbarとVS.NETのエディタのスライドバーみたいなのない?

12 :デフォルトの名無しさん:2006/10/19(木) 22:50:12
>>7
小学三年生以上の読解力があるんだろ?
それなら>>6は読めるよな?

13 :デフォルトの名無しさん:2006/10/20(金) 12:52:44
ちょ 単一インスタンス設定してコンパイルして
2個目起動したらアクセス違反起こして終了するぜwwwwwww

怪しいと思ってプロジェクト新規作成して
コードも打たずにform1個だけでやってもなったぜ



…俺だけ?('A`)
ちなみにアプリケーションイベント実行直後にアクセス違反してるな
next〜〜 イベントにmsgbox("a") やって試したら
メッセージボックス出たままアクセス違反のダイアログでたぜ

14 :デフォルトの名無しさん:2006/10/20(金) 13:20:46
ウィルススキャン止めたらなおったりして。

15 :デフォルトの名無しさん:2006/10/20(金) 14:13:14
>>14
天才。マジ天才。ありがとう

ウイルスチェックソフト終了してもプロセス残ってたので
アンスコしたらアクセス違反起こさなかったぜ





Sースネクストちゃんのウイルスチェックソフトですた。
報告しておいたからバージョンアップで直るかもねー

5台分のライセンスあるのに使うPCとりあえずアンスコか('A`)
AVGだったら問題なかったからとりあえずAVG入れるか・・・

16 :デフォルトの名無しさん:2006/10/20(金) 15:24:25
あ、ちなみに 開発環境に入れてると〜 って条件じゃなく、
クライアントにインスコしてると だから
VB.net 2005で単一やって配布するときは
気をつけてあげたほうがナイスガイだぜ?

17 :デフォルトの名無しさん:2006/10/20(金) 20:26:28
確かMSからパッチでてなかったっけかな?
リモーティングのipcチャネルで発生する問題だと思う。

18 :デフォルトの名無しさん:2006/10/20(金) 20:27:46
あいやipcでなくてもおこったかな?
ちょっと思い出せない…

19 :デフォルトの名無しさん:2006/10/21(土) 11:58:17
>>8
多分 DataView.Sort と同じ文字列しか使えない。
DataTable に計算列を後から追加すればなんとかなるんじゃない?

20 :デフォルトの名無しさん:2006/10/21(土) 15:12:57
前スレの事件をよーーく考えたが
やはり全メソッドにtry〜catch〜finally〜 は必要だろ。
ON ERROR GOTO の時代に逆戻りする意味はない。
ちょっと知識があるからって初心者をたぶらかしちゃいかんよ。



21 :デフォルトの名無しさん:2006/10/21(土) 15:34:18
>>20
幼稚なガキは鬱陶しいからラウンジでもどこでも行ってくれないか。
場違いなんだよ馬鹿。

22 :デフォルトの名無しさん:2006/10/21(土) 16:15:42
>>20
>>6

23 :8:2006/10/23(月) 14:01:55
>>19
やっぱりその方法しかないのか・・・
列を追加して、ソート後削除すれば、確かに出来るので、
その方法で行きます。
ありがとう

24 :デフォルトの名無しさん:2006/10/23(月) 20:52:37
DataGridViewのソートボタンで、
数値としてソートさせることは可能ですか?

文字としてソートされるようなので、
1〜100まであるとしたら、1,10,100,11,12・・・となってしまいます。


25 :デフォルトの名無しさん:2006/10/23(月) 21:05:05
DataSource が数値型の列ならちゃんとやってくれるよ
DataSource 使ってないなら SortCompare イベント

26 :デフォルトの名無しさん:2006/10/25(水) 02:37:29
DirectXってVB.NETでも使えますか?

27 :デフォルトの名無しさん:2006/10/25(水) 02:58:54
Managed DirectX
で検索

28 :デフォルトの名無しさん:2006/10/25(水) 09:34:21
質問させてください。
仕事でモバイルWebフォームを使って携帯サイトを作らなくてはなりません。
フォームに貼り付けたテキストボックスにフォーカスがきたときに、
全角入力(imeModeをon?)にしたいのですが、わかりません。
(そもそもドコモやAUやソフトバンクの携帯にimeModeはないと思うのですが)
教えていただけないでしょうか。

29 :デフォルトの名無しさん:2006/10/25(水) 11:57:42
質問です。宿題で期限が土曜日正午です。
「多倍長整数を使うことによって、フィボナッチ数列の100番目
までを正しく計算するプログラムをC言語で作成しなさい。」
いろいろ調べたんですが、多倍長整数がなんなのかよくわかっていないので。。。
よろしくおねがいします。

30 :デフォルトの名無しさん:2006/10/25(水) 12:00:38
↑書き込む場所間違えましました。すいません。

31 :デフォルトの名無しさん:2006/10/26(木) 20:26:32
外部ファイルのリソースを抽出するには、どうしたら良いでしょう。
例えば、ntoskrnl.exeから起動ロゴのビットマップを抽出するとか、shell32.dllからアイコンを抽出したり、、、

32 :デフォルトの名無しさん:2006/10/26(木) 20:50:29
Win32API

33 :31:2006/10/26(木) 21:58:36
アイコンの取得はWinAPIのExtractIconで出来ることがわかりました、、、
でも、ビットマップのほうは資料があまり無いみたいで、、、わかりません。

34 :デフォルトの名無しさん:2006/10/27(金) 10:38:57
VB2005でスケジュール管理ソフトを作ろうとしているんだけど、
画面上と印刷レポートにスケジュールの棒グラフを表示できるような仕様にしたいと思ってます。
適したコントロールってありますか?

35 :デフォルトの名無しさん:2006/10/27(金) 18:51:36
>>34
Label

36 :デフォルトの名無しさん:2006/10/29(日) 18:09:30
教えてください。
固定長のテキストデータをまず読み込んで
各行の1バイトごとにxor値をとり
それを行末に吐き出して再度保存するって、
VBで可能でしょうか。

アイウエオカキクケコ(改行)
サシスセソタチツテト(改行)

↑この各行11バイトのファイルをバイナリで読み込み、
nullとアのxor値をとり、次にそのxor値とイのxor値をとり、
・・・トまで繰り返します。この結果をトと改行の間に
吐き出し、最後はファイルに保存します。

このようなファイルとなります。
アイウエオカキクケコ?(改行)
サシスセソタチツテト?(改行)
(?のところは文字とは限らないので、化けます)

これをVBでやろうと考えているのですが、
可能なんでしょうか。
VBに詳しい方教えてください。

37 :デフォルトの名無しさん:2006/10/29(日) 18:18:24
だからさあ、大雑把に可能でしょうかってなんだよそれ。
まず自分で調べろよ。
その上で不明なことを人に聞くんだよ。

38 :デフォルトの名無しさん:2006/10/29(日) 19:08:27
不可能ってことがありえると思うのか?

39 :デフォルトの名無しさん:2006/10/29(日) 20:23:43
どこぞの掲示板じゃねえんだから
えらそうに「まずは調べろ」とかいわずに
答えてやったらどうなんだ?

ちなみにおれも偉そうに答え書いてやろうとしたが
VBSだとバイナリ読みしてバイト変換できねんだな・・・
明日会社でVBでやってみるけど、結構深い内容かも。

ところで>>36 xor値をそういうかたちでとるのではなく、
単に2バイトの文字列だけの排他的論理和とるだけでもいいか?
あとは自分でやってくれ。適当にまわせばできるだろ。

40 :デフォルトの名無しさん:2006/10/29(日) 20:27:47
おっと、ここはsage進行なのか・・・

訂正
1バイトずつの文字列の排他的論理和 ね。

41 :デフォルトの名無しさん:2006/10/29(日) 23:28:04
>>36
単純に一行読み取って一文字(1バイト)ずつ取ってくればいいだけじゃまいか?
まずは何かを試してダメだったらそれを質問すれば良いのでは?

42 :デフォルトの名無しさん:2006/10/30(月) 00:26:37
>>36
可能です。


43 :36:2006/10/30(月) 10:58:20
たくさんのお返事ありがとうございます。

たとえばこれができないんです。
最後のxorの計算の行が「型が一致しません」というエラーになります。
BASP21使ってるんですが・・・

Option Explicit
Dim bobj
Dim BinAll
Dim BinXor
Set bobj = CreateObject("basp21")
BinAll = bobj.BinaryRead("C:\test01.txt")
BinXor = bobj.MidB(BinAll,1,1) Xor bobj.MidB(BinAll,2,1)


44 :36:2006/10/30(月) 11:15:34
ちなみにtest01.txtの中身は
abc123
と書いてあるだけです。
この末尾にバイナリのxor値を入れて
別ファイルに書き出すのが最終目標なんです。
abc123?
みたいなやつに。(?はバイナリ)

45 :デフォルトの名無しさん:2006/10/30(月) 12:00:12
>>36
VBではなくVBSでやりたいのか?


46 :デフォルトの名無しさん:2006/10/30(月) 12:28:12
質問する奴が非常識なら答える方も日本語もロクに読めない低能か

47 :デフォルトの名無しさん:2006/10/30(月) 12:35:55
>>43
VB.NETにはSetステートメントなんて無いよ。スレ違い。

48 :36:2006/10/30(月) 12:45:23
スレ違いですか。
了解しました、相応のスレを探してそこに書きます。
汚してすいませんでした。

49 :36:2006/10/30(月) 12:52:02
しかし、どこのスレになるんでしょ・・・
CとかJAVAとか.netしか見当たらないんですが。

50 :デフォルトの名無しさん:2006/10/30(月) 12:57:19
ここじゃね?VBScriptもOKらしい。

VBプログラマ質問スレ(6.0以前) Part50
http://pc8.2ch.net/test/read.cgi/tech/1161517193/

51 :36:2006/10/30(月) 13:06:52
>>50
トン
すげえいい人、ありがとね。
ではそちらに書いてきます。

52 :デフォルトの名無しさん:2006/10/30(月) 16:02:43
失礼します。
いまいろいろと調べながらVB2005の学習をはじめたのですが……、
フォームデザイナで作成されるコードで判らない箇所があります。

【判らない箇所】

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim iRet As Integer
Dim Api As New Calib.OBReadLibNet.Api
Dim Def As New Calib.OBReadLibNet.Def

iRet = Calib.OBReadLibNet.Api.OBRLoadConfigFile()'-----------@





End Sub


*******************************************************

以上のようなコードでDLLの呼び出しを行っているのですが、
@の箇所で次のような警告が表示されてしまいます。

【エラーメッセージ】
「インスタンスを経由する共有メンバ、定数メンバ、
列挙型メンバ、または入れ子にされた型へのアクセスです。
正規の式は評価されません」


どなたかご教授お願いできませんでしょうか?

53 :デフォルトの名無しさん:2006/10/30(月) 19:17:17
馬鹿なの?少しは自分であがけよ。
googleで「正規の式は評価されません」で検索したら一発で答えが見つかったけど。


54 :デフォルトの名無しさん:2006/10/30(月) 20:49:16

ボタン1を押すと”別ウィンドウに”グラフが描画されるようにしたいのですが、どなたか御教授ください。

Form1にはボタンがあって、それを押すと別のフォームが出現して、そこにあるpictureBoxにグラフが出力できるようにしたいのです。


55 :デフォルトの名無しさん:2006/10/30(月) 20:54:54
で、何が分からないの?

56 :デフォルトの名無しさん:2006/10/31(火) 12:54:56
VB2005ってVB.NETの発展型っすよね?

カラオケBOXみたいな部屋管理システムを試しに作ってみようと思ったんですが、
VB6とVB2005ならどっちのほうが向いてますかね〜?

当方VB6は6年ぐらいやってますがVB.NETとVB2005は初です


57 :デフォルトの名無しさん:2006/10/31(火) 15:14:35
テキストボックスに文章打ち込んでボタン押すと
左右逆向きで表示させるにはどうすれば良いんでしょうか?
[あいうえお]って打ってボタン押したら下に[おえういあ]って感じで
substringを使ってどうこうだったと思うけど思い出せない・・・・
[this is a pen]って打ったら[nep a si siht]ってlableに表示させたいです
エロイ人おすぃえてください><

58 :デフォルトの名無しさん:2006/10/31(火) 15:32:08
>>57
Label1.Text = StrReverse(TextBox1.Text)

59 :デフォルトの名無しさん:2006/10/31(火) 16:01:47
あれ、そんな簡単に出来たんだっけ・・・・orz
ありがとうございます><
ちなみによければsubstringとloopつかったコードも教えてもらえますか?

60 :デフォルトの名無しさん:2006/10/31(火) 16:20:50
Substring使わんでもStringのn文字目は取れるんだが。

Dim sb As New System.Text.StringBuilder(TextBox1.TextLength)
For i As Integer = TextBox1.TextLength - 1 To 0 Step -1
  sb.Append(TextBox1.Text(i))
Next i
Label1.Text = sb.ToString()

61 :デフォルトの名無しさん:2006/10/31(火) 18:47:59
textboxが10個あるとして、それぞれを1から順番に処理したい場合、forやwhileでループさせる事は出来ますか?
要するにtextbox(i)みたいな感じで番号部分だけ変えて同じ処理を使いまわす事は可能かという事なのですが・・・
可能であればどのように指定すれば良いか教えて下さい、お願いします。

62 :デフォルトの名無しさん:2006/10/31(火) 18:56:12
VB6のコントロール配列ね。
だから散々既出だけど、自分で配列なりコレクションなりにぶち込みましょう。

ほかにもっと覚えるべきことたくさんあるから、VB6のやり方に固執して
無駄に時間を使わない方がいいよ。

63 :61:2006/10/31(火) 22:44:08
調べてみました。自分はVBの勉強を始めたのも.NETからだったので知らなかったのですが、
以前のバージョンではコントロール配列なんて便利なものがあったんですね。
自分なりに色々やってみたけどもう訳わかんねぇ・・・

64 :デフォルトの名無しさん:2006/11/01(水) 01:03:05
>>61
どっちが便利かは微妙。
動的に扱うことを考えると.NETのようにコレクション化して自由にやれるほうがよい。
それ自体をデザイナで自由にいじれる何かがあればもっと良いとは思うけどね。

どちらにしても今更VB6なんて使う気になれん。

65 :デフォルトの名無しさん:2006/11/01(水) 12:21:19
Dim a As New Integer
とせずに、
Dim a As Integer
と、Newがいらないのは何故ですか?

66 :デフォルトの名無しさん:2006/11/01(水) 13:05:45
何故どちらも0に初期化されるのかという意味ならIntegerが値型だから

67 :デフォルトの名無しさん:2006/11/01(水) 14:33:05
DataGridViewでTOPの2行を固定行とし、ソートの対象外に
したいのですが、froznで固定してもソートの対象になってし
まいます。
どうすればいいでしょうか?


68 :デフォルトの名無しさん:2006/11/01(水) 17:55:08
VB.NETでIE上で動作するActiveXコンポーネントのようなものを
作る事は可能なのでしょうか?
何処か参考になるサイトがありましたら教えて下さい。

69 :デフォルトの名無しさん:2006/11/01(水) 18:34:08
delegateがよーわからん。厳しく教えて。

70 :デフォルトの名無しさん:2006/11/01(水) 18:59:16
WindowsCEのエミュレータの作り方って……、

1、Platform Builder5.0でWindowsCEのエミュを作成
2、出来上がったものを叩いてエミュレータをインストール

からどうするか判る方いませんか?

71 :デフォルトの名無しさん:2006/11/01(水) 20:27:06
>>69
ぐぐれ


72 :デフォルトの名無しさん:2006/11/01(水) 23:22:34
デバッガ上で動かすと最初に起動するフォームにTry〜Catchを入れておけば
子フォームの例外もキャッチしてくれるのにEXEにすると各フォームの
イベントにTry〜Catch入れないと駄目なんでしょ?

73 :デフォルトの名無しさん:2006/11/02(木) 07:54:31
プログラムを実行したときに、コンボボックスにあらかじめ+が表示されてるようにしたいんですが、
イベントプロシージャに、
ComboBox1.SelectedIndex = "+"
と書いたんですが、ダメだったので、答えを教えて下さい。

74 :デフォルトの名無しさん:2006/11/02(木) 08:00:19
>>73
インデックスって何か分かってる?

75 :デフォルトの名無しさん:2006/11/02(木) 08:05:22
よく分かりません、
コンボボックスのSelectedIndexプロパティに値を設定すればいいとヒントにあったので

76 :デフォルトの名無しさん:2006/11/02(木) 08:05:44
SelectedIndexに設定するんなら突っ込んであるアイテムの何個目が"+"かと言う数値を入れる

たぶんおまえさんがやりたいのはこっち
ComboBox1.SelectedItem = "+"


77 :デフォルトの名無しさん:2006/11/02(木) 08:13:19
Dim A As hoge = New hoge
Dim B As hoge = New hoge

B=A

ってやるとBの参照が入れ替わるんだけどBの実体はどこにいってしまうの?

78 :デフォルトの名無しさん:2006/11/02(木) 08:13:40
ComboBox1.SelectedItem = "+" をやってみましたがダメでした

79 :デフォルトの名無しさん:2006/11/02(木) 08:15:13
>>77
どこか触れないところ

80 :デフォルトの名無しさん:2006/11/02(木) 08:22:34
>>78
Public Class Form1

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

ComboBox1.SelectedItem = "+"

End Sub
End Class
試験用に上のコードで試したが正しく動作するぞ?
あらかじめコンボボックスの中身をフォームで設定済みって事前条件があるが
VB2005.netな

81 :デフォルトの名無しさん:2006/11/02(木) 08:23:24
>>72
イベントにTry〜Catchなんて不要
答えは前スレ

82 :デフォルトの名無しさん:2006/11/02(木) 08:28:43
>>80
できました。
ありがとうございました。

83 :デフォルトの名無しさん:2006/11/02(木) 09:50:54
そこで止まるけどなw

84 :デフォルトの名無しさん:2006/11/02(木) 10:27:06
>>77
ガベージコレクタ行き。

85 :デフォルトの名無しさん:2006/11/02(木) 10:29:46
>>67
ソート用の項目を設ける。第一Keyと第二Keyとして。

86 :デフォルトの名無しさん:2006/11/02(木) 21:22:21
>>81
Application.ThreadExceptionイベントを使うのか〜
知らんかった。アリガトン

87 :デフォルトの名無しさん:2006/11/02(木) 21:52:46
この繰言馬鹿いつまで同じことやってるつもりだろうね。
っていうか、ここ1年ぐらいボケ老人みたいにひたすら同じこと書き続ける奴が
異常に増えた気がする。

こういう奴って自分で自分の繰言にバカウケしてるんかな

88 :デフォルトの名無しさん:2006/11/02(木) 21:59:47
全メソッドにtry〜catch〜finally〜
当然の処理だよな

89 :デフォルトの名無しさん:2006/11/02(木) 22:07:13
>>88
エラーのthrowされるメソッドには1ステップ毎にtry〜catchでしょ?

90 :デフォルトの名無しさん:2006/11/02(木) 22:20:31
もちろんちまちま捕まえずに As Exception でごっそり頂きだよな

91 :デフォルトの名無しさん:2006/11/02(木) 22:31:19
>>88-90
>>6


92 :デフォルトの名無しさん:2006/11/02(木) 23:29:09
>全メソッドにtry〜catch〜finally〜
>当然の処理だよな

もうこのネタじゃ誰も釣れない。

93 :デフォルトの名無しさん:2006/11/02(木) 23:41:07
クマー


94 :デフォルトの名無しさん:2006/11/03(金) 00:09:57
ま、エラーの起きる可能性がある箇所をきちんと対処していれば、
必要以外try〜catch〜finally〜なんていらないのは事実。
つまり、しっかりバグを潰せということだ。
ただ、バグが無くても例外が起きる可能性はあるので、
例外処理が全て同じならApplication.ThreadExceptionイベントだけあればよく、
特別な処理をさせる必要があるメソッドがあるなら、上記+そのメソッドだけtry〜catch〜finally〜を記述。
これで完璧だろ。コストも低くて無駄もない。メモリ使用量も激減。
そのうえ、コーディング時に例外を意識する必要もなくなる。

例外が起きても続行というのは絶対にありえないしね。

>>6はVBに限った話じゃないから議論にならない。

95 :デフォルトの名無しさん:2006/11/03(金) 00:14:53
まあtry-finallyはいっぱい使うがな


96 :デフォルトの名無しさん:2006/11/03(金) 00:42:30
> 例外が起きても続行というのは絶対にありえないしね。
原理主義者はこれだから…
ユーザビリティとかって死ぬまで分からんのだろうな…

97 :デフォルトの名無しさん:2006/11/03(金) 01:10:42
>>96
もし例外(予想外の事態)が起きたとき、気づかずに処理を続けていたらやばすぎるだろ?
もし例外(予想外の事態)が起きてることに気づけるアプリなら、気づいたら止めるだろ普通!

どんなユーザビリティか教えてくれよ。

98 :デフォルトの名無しさん:2006/11/03(金) 01:23:13
>>96が言ってるのは、
バグが沢山あるひどいプログラムだから、
何かあっても、まるでバグが無いかのように続行させるための手法で、
結果が正しくない等、バグ報告があったらバグフィックスすればいいという発想。
つまりちゃんとバグとれってことなんだよな。




99 :デフォルトの名無しさん:2006/11/03(金) 01:33:19
tryと打ったら、馬鹿の一つ覚えみたいに、Catch節を補完するIDEが悪い。
tryと打ったら、finally節だけを補完しやがれ糞が

せめて設定で変えられるようにしやがれ

100 :デフォルトの名無しさん:2006/11/03(金) 03:10:18
>原理主義者はこれだから…
>ユーザビリティとかって死ぬまで分からんのだろうな…
痛々しい。
だからThreadExceptionって以下省略。


101 :デフォルトの名無しさん:2006/11/03(金) 08:37:25
>>99
try〜catch〜finallyと全部補完して欲しいな。
ま、catchの方は消すけど。

102 :デフォルトの名無しさん:2006/11/03(金) 10:02:31
>>99,101
tryf、trycfのコードスニペット使えばいいのに
と思ったけど2005にしか無いんだっけ

103 :デフォルトの名無しさん:2006/11/03(金) 10:50:45
>>102
trycf <Enter> ってやったら trycf() ってなって怒られるが
                 ^^^^^
trycf <Tab> でやるとちゃんと出るスゲェ〜
コードオナペットって便利だな。

104 :デフォルトの名無しさん:2006/11/03(金) 11:17:44
コードスニペットってTabで移動する所に色が付いてるけど
あれってどうやったら消えるの?
C#だとEnterで消えるんだが。

105 :デフォルトの名無しさん:2006/11/03(金) 17:29:15
初心者向けの参考書って何?

106 :デフォルトの名無しさん:2006/11/03(金) 20:49:57
vb.net 2005では、Application.ThreadExceptionイベントの代わりに
My.Application.UnhandledException イベントを使えばよいのですか〜?

C#からも使えるらしいけどVB2005のMy機能ってなんかVB独自路線。

107 :デフォルトの名無しさん:2006/11/03(金) 21:01:48
2005は使ったこと無いけど、色んな情報を
見る限り、デグレートした気分。

Myって初めて聞いたけど、なんか曖昧な感じがする。


108 :デフォルトの名無しさん:2006/11/03(金) 21:58:04
System.DateTime.Now.Ticks
Now.Ticks
Date.Now.Ticks
My.Computer.Clock.LocalTime.Ticks

System.Environment.TickCount
My.Computer.Clock.TickCount

上の4つと下の2つが同じものか?
Tick値を取得するのが6つもあってVB厨は混乱するばかりだな。。

C#だとSystem.〜の2つだけになるのか

109 :デフォルトの名無しさん:2006/11/03(金) 22:05:05
>>107
デグレート? VB6.0への回帰現象か。

110 :デフォルトの名無しさん:2006/11/03(金) 22:22:28
>>109
そう。

VB6.0以降はオブジェクトを知らない人でも
上手に使えるように設計されてるけど、逆に
曖昧さが出来てしまってる。

その証拠にインスタンスなんて知らなくても、
なんでもできるじゃん。


そこで、Myって何?って思わない?

111 :デフォルトの名無しさん:2006/11/03(金) 22:39:13
昔の鶴太郎の持ちネタにマイ爺さんっていうのがあった。
単に「マイ?」しかいえない爺さんのネタなんだが。。

112 :デフォルトの名無しさん:2006/11/03(金) 22:49:11
>>110
VB6.0からVB.Netに切り替わった時にVB6.0の関数なんか全部切り捨てればよかったのにね〜
同じ名前の関数でVB6.0とVB.Netで微妙に動きの違うのなんか百害あって一利なし。混乱の元。

>>108のなんかNow, Date, MyはVB独自のものだから無くなればすっきりする。

113 :デフォルトの名無しさん:2006/11/03(金) 22:51:10
これ以上、VB6.0への回帰現象が進むと.NetでもVB6.0のような怪奇現象が起きる様になるかも。w

114 :デフォルトの名無しさん:2006/11/04(土) 03:03:47
>>102
2005使いだけど、初めて知った。サンクス!!
これは便利だわ。

115 :デフォルトの名無しさん:2006/11/04(土) 03:09:41
みんな思ってるが、慣れてくると
テキストエディタにタイプした方が
全然早い。

「2005使いだけど」という時点で、なんか素人くさい。

116 :デフォルトの名無しさん:2006/11/04(土) 03:22:52
>>115
みんなって誰?

117 :デフォルトの名無しさん:2006/11/04(土) 05:11:10
>>115お前はあほくさい。


118 :デフォルトの名無しさん:2006/11/04(土) 09:47:07
>>116
みんなと言うのは、その人物の器によって決まる。
>>115 の場合は自分と他数人だけでみんな。
オレの場合のみんなは全人類だな。人類の罪を背負ってVBプログラマやってんだ。

119 :デフォルトの名無しさん:2006/11/04(土) 09:49:47
やっぱりあほだったね。

120 :デフォルトの名無しさん:2006/11/04(土) 10:02:37
VB.NET 2003なのですが、ComboBoxのテキストを中央揃えにするには
どうすればよいのでしょうか。

TextBoxみたいにTextAlignプロパティってないんですね・・・

121 :デフォルトの名無しさん:2006/11/04(土) 11:46:39
>>118
多分だが、俺は含まれてないと思う。

122 :デフォルトの名無しさん:2006/11/04(土) 12:30:23
>>120
面白い発想だけど、難しいね。

中央揃えって、文字の長さとコントロールの幅を
考慮して、勝手に真ん中にしてくれてるじゃん。

あれをオーナードローで、表示文字とコンボボックスの
幅を考慮して適切な位置に描画する処理を実装。

123 :デフォルトの名無しさん:2006/11/04(土) 18:03:21
天才ハッカーさんたちお願いしまふ。


(Diskette Tips)


Create a Diskette Tips application that displays one of the following messages when Tip is clicked:

*Keep diskettes away from electrical and magnetic devices.
*Do not expose diskettes to either extreme cold or heat.
*Store diskettes away from dust, dirt, and moisture.
*Never touch the diskette's magnetic surface.

The program code should include a DisplayTip() procedure that uses RndInt() from Review 10 to
randomly display one of the tips in a label.

124 :デフォルトの名無しさん:2006/11/04(土) 21:57:50
>>123
(ディスケット・チップス)
先端がクリックされるとき、以下のメッセージのうちの1つを表示するディスケット先端アプリケーションを作成しなさい:
ディスケットを電気で磁気装置から遠ざけなさい。
ディスケットをどちらの極端な寒さもまたは熱にさらすな。
ちり、ほこりと湿気から離れてディスケットを保存しなさい。
ディスケットの磁気表面に決して触れるな。
プログラム・コードは、ラベルでランダムに先端のうちの1つを表示するために再検討10からRndInt()を使うDisplayTip()手順を含まなければならない。


125 :デフォルトの名無しさん:2006/11/04(土) 21:58:44
VB2005を勉強中なのですが、質問させてください。
別の人が作ったTCPサーバーアプリケーションに接続するクライアントアプリケーションを作っているのですが、
接続は、

Dim (クライアント名) As New System.Net.Sockets.TcpClient
(クライアント名).Connect("(ローカルに接続できればいいので)Localhost", (ポート番号))

Dim networkStream As System.Net.Sockets.NetworkStream = (クライアント名).GetStream()

でいいんでしょうか。
その後、確認のため

Dim kakunin As String = "(クライアント名)が接続しました"

というメッセージをサーバーアプリケーション側に流す場合、
kakuninをByte型に変換する必要があるのか、それともそのまま送れるのかがよくわかりません。
よろしければご教授ください。

126 :デフォルトの名無しさん:2006/11/04(土) 22:34:33
まあ試してみろよ

127 :デフォルトの名無しさん:2006/11/04(土) 23:49:19

'エンコードを指定
Dim sysenc As System.Text.Encoding = System.Text.Encoding.UTF8
'バイト型配列に変換
Dim bytes As Byte() = sysenc.GetBytes("ここに変換したい文字")
'君が宣言したネットワークストリームでデータを送信
networkStream.Write(bytes, 0, sendBytes.Length)


サーバー側がリスナーを開始してないと何にもならないけどな

128 :デフォルトの名無しさん:2006/11/05(日) 00:04:33
すいません。教えてください。
テキストエディタを作っているのですが、ファイルを開くときにシフトjisで読み込むようにしたいのですが、
'Dim reader As New StreamReader(fn, False, System.Text.Encoding.GetEncoding("shift-jis"))←のコードを下のコードのどこに入れればいいのかわかりません。
よろしくお願いします。


    Private Sub FileOpen()
        OpenFileDialog1.Filter = "CSVファイル|*.csv|テキストファイル|*.txt|HTMLファイル|*.html;*.htm|すべてのファイル|*.*"
        If OpenFileDialog1.ShowDialog = DialogResult.OK Then
            Dim reader As StreamReader
            Try
                reader = New StreamReader(OpenFileDialog1.FileName)
                main.Text = reader.ReadToEnd
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            Finally
                If Not reader Is Nothing Then
                    reader.Close()
                End If

            End Try
        End If
    End Sub

129 :デフォルトの名無しさん:2006/11/05(日) 00:10:40
はぁ?
面と向かってこんなアホな質問する奴がいたら俺なら頭殴るなマジで。
つーかプログラミング向いてない奴が無理にやることないと思うんだが

130 :デフォルトの名無しさん:2006/11/05(日) 00:13:15
流石にこれはネタだよな

131 :デフォルトの名無しさん:2006/11/05(日) 01:45:13
好きな所に入れればいいんじゃないの?単なるコメントなんだから。
ただそれじゃShift-JISでは読み込まんけどな。

132 :デフォルトの名無しさん:2006/11/05(日) 03:10:07
VS2005のプロパティウィンドウみたいなコントロールってありますか?
、、、探しても見つからなくて。

133 :デフォルトの名無しさん:2006/11/05(日) 03:17:55
PropertyGrid
みたいなではなくてそのまんまだが

134 :デフォルトの名無しさん:2006/11/05(日) 03:19:30
>>131
ほんとにコメントだwwワロタwww



135 :132:2006/11/05(日) 03:48:26
あ、ありました。
「すべてのWindowsフォーム」隠してたから分からなかったorz

136 :デフォルトの名無しさん:2006/11/05(日) 09:58:01
"shift-jis"って書いてあるのを良くみかけるがMSDNでは"shift_jis"になってるんだがな。
"shift-jis"でも動くようだが間違った記述で解説しているWebページ多杉。

IANA的には"Shift_JIS"が正しいようだが。

137 :136:2006/11/05(日) 10:10:52
こいつらも"shift_jis"の別名として使えるのか。orz

csShiftJIS
csWindows31J
ms_Kanji
shift-jis
x-ms-cp932
x-sjis

138 :デフォルトの名無しさん:2006/11/05(日) 10:48:48
GetEncoding(932)が最強

139 :デフォルトの名無しさん:2006/11/05(日) 11:36:58
おまいら、こんなのどうよ。

コンボボックスが5個。
選択項目も5個

しかし、一つ選択するとすべてのコンボボックスで
選択肢が一つ減る ダイナミックな作り。
逆に、選択を解除するとその分選択肢が増える。

どう、実装するよ?

140 :デフォルトの名無しさん:2006/11/05(日) 12:05:38
>>139
全てのコンボボックスの選択肢が1つ減るということは
自分自身も1つ減るのではないか。

141 :デフォルトの名無しさん:2006/11/05(日) 12:31:23
>>139
まずその舌足らずな仕様説明をなんとかすべきだろうね。
少なくとも俺はエスパーじゃないんで、そんな説明では不十分な理解しかできない。


142 :デフォルトの名無しさん:2006/11/05(日) 12:51:29
>>140,141
失せろ。

1から10まで説明しないと実装できないのがお前ら
ブービー坊がカスだと言われる所以なんだよ。

現場で、詳細設計書はどこですか〜?なんて言うのか?

ダイナミックってなんだよ?わからないんだろ?


143 :デフォルトの名無しさん:2006/11/05(日) 12:54:01
お前の頭の中がダイナミックなことだけは分かった

144 :デフォルトの名無しさん:2006/11/05(日) 13:01:42
そうか、詳細設計も無しに作るのか…



何が出来ることやら…w

145 :デフォルトの名無しさん:2006/11/05(日) 13:07:00
言語にもよるけど、ブービーで詳細設計書まで作ってもらってる
PGって、上流工程の人間から見ると本物のカス。

まぬけなロジックを多大な工数をかけて作らせるのを防止する
ために、親切丁寧な詳細設計書を書いてあげる。

少しはできる人間なら、基本設計書ないし、要件定義をみれば
詳細におこせるから。

ここは少し難しい問題がでると、とりあえずなんとかしてごまかすよネ。

146 :デフォルトの名無しさん:2006/11/05(日) 13:10:41
まあ139がネタかマジがわからんけど、
日本人のコミュニケーション能力の低さは問題だよね。

とにかく上から末端まで、意思疎通の重要さと難しさが認識されてない。
仕事でも2chのこういう板でも、読み手の視点に立てない奴が独りよがりに書きなぐった
要領を得ない説明文ばかりなわけで。

147 :デフォルトの名無しさん:2006/11/05(日) 13:23:03
>>139
選択肢が減らないとして 5 x 5 x 5 x 5 x 5 = 3125通り
ひとつ選ぶ毎に減るとしても 5 x 4 x 3 x 2 x 1 x 5 = 600通り

こんなもん実装してなんに使うんだ?
UIとしては糞だと思うが。

148 :デフォルトの名無しさん:2006/11/05(日) 13:50:07
>>147
ネタにマジレスあんがと。

しかし、600通りの場合、なんで最後にx5?
順列だから5の階乗=5・4・3・2・1=120通り。

UIは、ある選択肢の中から、優先順位を選択させる
ためにコンボボックスが5つ配置してあるとしよう。

当たり前だけど、120個もSELECE CASE文を書いたりしない。

どうするよ?


149 :デフォルトの名無しさん:2006/11/05(日) 14:03:46
>>148
選択したものに対して残りの選択肢の内容が替わると考えて x5 だが。計算が違うか・・・

>当たり前だけど、120個もSELECE CASE文を書いたりしない。

120個くらいならSELECE CASE文で済ませるが。
それの方が単純明快だろ?

多いときはコレクションでも使うかな。

150 :デフォルトの名無しさん:2006/11/05(日) 14:14:23
>>149
話が終わっちゃうじゃん(´;ω;`)

それに、120個もcaseがあるソースをみたら、死にたくなる。
先々、コンボボックスが増えたら・・・

コレクションという考えはわるくはないけど・・・

有名なダイナミック・プログラミングの簡単な応用だよ。
二次元配列を使うから、コレクションだと出来なくないけど
わかりにくい。



151 :デフォルトの名無しさん:2006/11/05(日) 14:17:53
やっぱり馬鹿の考えることはわからん。
どうするよ?ってなんのこっちゃw

どうすべきか、は目的(何を実現したいのか)から導かれるもの。
目的が一切提示されていないのに一体何をいっているんだこの馬鹿は。

152 :デフォルトの名無しさん:2006/11/05(日) 14:39:48
>>151
何度も同じ事をいわせるなよ。

お前の脳みそじゃ、理解できない事も世の中には
たぁぁぁぁあくさん、あるんだよ。

153 :デフォルトの名無しさん:2006/11/05(日) 14:46:47
txtファイルに
00010
11000
01001
01101
このような0と1の羅列があるんですけど
これをVBのプログラムで読み込んで、これらの数字を二次元配列に入れるという場合は
どういったプログラムを作ればよいのでしょうか?
ぐぐったりしてみたものの、全くわからず困っております。

154 :デフォルトの名無しさん:2006/11/05(日) 14:47:49
流れをぶったぎってスマン。
VB2005でReportViewerを使って印刷用の帳票を作成しているんですが、
A4用紙の設定ってどこを設定すればいいの?
エロい人教えてください。

155 :デフォルトの名無しさん:2006/11/05(日) 14:54:44
>>150
ダイナミック・プログラミングってのでぐぐったらアカデミックなのが沢山ヒットしたが
厨房プログラマーの多い実務のVBプログラムにそんな高尚なものを実装されたらメンテする方が迷惑だな〜

それに、コンボ5個を同じ画面に並べると期待した順番に選んでくれるとは限らんしな。
UIにするのならウイザード画面にする方が良くないか。ま、選択肢120個は同じだが。

156 :デフォルトの名無しさん:2006/11/05(日) 15:20:22
>>153
'テキストを読み込んだ後に、何を二次元の配列に
'したいか考えろ。
dim sr as System.IO.StreamReader
dim strLine as string
sr = New System.IO.StreamReader("ここに対象のファイルをフルパス指定")
Do Until sr.Peek() < 0'ファイルが終了するまでループする
strLine = sr.ReadLine()
Loop
sr.Close()'ファイルのクローズ処理

>>154
ReportPageSettings クラス

>>155
たまには、おもしろいネタがあってよくない?


157 :デフォルトの名無しさん:2006/11/05(日) 15:21:13
そういうコンボボックスリアルで作ったことあるなあ。

エクセルVBAでだけど

158 :154:2006/11/05(日) 15:38:47
>>156
レスサンクス
そのReportPageSettingsクラスって
Microsoft.Reporting.WinForms.ReportPageSettings.PaperSizeをいじるってことですよね?
これ読み取り専用ですが・・・

159 :デフォルトの名無しさん:2006/11/05(日) 15:54:32
>>158
ごめん。適当にいった。

もしかしたらPaperSourceクラスかもしれん。

160 :154:2006/11/05(日) 17:49:39
>>159
PaperSourceは用紙トレイの指定では?
まだ模索中・・・できない。。。orz

161 :デフォルトの名無しさん:2006/11/05(日) 17:54:52
帳票はクリレポとか使うからな〜

162 :デフォルトの名無しさん:2006/11/05(日) 17:58:33
クリレポなら、
CrystalDecisions.Shared.PaperSize
とかであるんだけどなぁ?

163 :デフォルトの名無しさん:2006/11/05(日) 18:00:09
ReportDocumentクラスとかつかっちゃだめなの?

164 :154:2006/11/05(日) 18:14:01
>>161>>162
スタンダードなのでクリレポ使えないんです。。。orz
>>163
ReportDocumentで行けそうなんですけど、
VB2005初心者なので、
ReportViewerとReportDocumentクラスの関係がいまいちわかってないのです。。。
お恥ずかしい限りです。

165 :デフォルトの名無しさん:2006/11/05(日) 19:08:23
>>164
ブビー坊って文句をたれるヤシは多いんだけど、
教えるだけのスキルが居るヤシは少ないんだ(´;ω;`)

プロジェクト→参照の追加とかで、クリレポの参照って
追加できなかったっけ?

ごめんけど、家にVSいれてないから曖昧な記憶しか
提供できないんだけど・・・

その二つのオブジェクトをDirectCastとかで
キャストできない??

166 :デフォルトの名無しさん:2006/11/05(日) 21:29:39
みんなリアルキティに付き合いがいいなあ…

167 :デフォルトの名無しさん:2006/11/06(月) 16:06:55
>>166
おまいも寂しいんだろ?
カマって欲しいんだろ?









                     やらないか?

168 :デフォルトの名無しさん:2006/11/06(月) 23:05:07
VS2005でこうマウスが乗っかると現れて、マウスが離れると消える、
スタートメニューみたいな物を作りたいんだけども
PanelのMouseHoverイベントでPanelのVisibleをEnableにして
PanelのMouseLeaveイベントでPanelのVisibleをFalseにするような風にプログラムを書くと
消す事は出来るけど復活しないんだ。
何でだろう?

169 :デフォルトの名無しさん:2006/11/06(月) 23:09:57
VisibleがFalseじゃイベント起きないだろ

170 :デフォルトの名無しさん:2006/11/06(月) 23:11:03
赤青のジャージ着た芸人?
確かに消えたまま復活しないな

171 :168:2006/11/06(月) 23:12:01
×VisibleをEnable(意味不明)
○VisibleをTrue

EnableがTrueだったらイベントは拾うんじゃなかったのか!
そしたらどうやって消えたり付いたりするの作ればいいんだろう?

172 :デフォルトの名無しさん:2006/11/06(月) 23:30:31
VisibleをFalseにすれば、イベント拾わないよ。

、、、そもそも、ある場所に来たら突然コントロールが表示されるって、どんなUIだよ。
素直にBackColor変える程度にすればいいのに。

173 :168:2006/11/06(月) 23:33:57
Panelを二重にして、下側のパネルで上側のパネルが
Visible=Falseの時のイベントを拾うようにした。ちょっと動きがギコチナイけども

> どんなUI
とりあえず見た目だけニョキニョキうごきまくって、何か凄そう!言うのを
前面に押し出したUI


174 :デフォルトの名無しさん:2006/11/07(火) 00:11:24
form1に入力したtextbox1のテキストをform2のlabelに表示したいのですが
モジュールで設定した以外に設定がわかりません。
ご教授お願いします。

やりたいことは

表示クライアント画面       管理クライアント画面
     ↓        ←管理        ↓
45型プラズマ出力          プラズマへ出力する内容入力

病院の外来担当表なんですが、外注するにももったいなので
つくってます。

175 :デフォルトの名無しさん:2006/11/07(火) 00:46:15
もう釣りなのかマジで聞いてるのか訳がわからんw

176 :デフォルトの名無しさん:2006/11/07(火) 01:06:02
>>174
label.text=form1.textbox1.text

177 :デフォルトの名無しさん:2006/11/07(火) 08:26:03
>>176 ありがとうございます そのコードは入力したのですが
通らないと言うことはモジュールの設定がおかしいと言うことですね

もうちょっと勉強します。

178 :デフォルトの名無しさん:2006/11/07(火) 09:40:11
>>177
まぁ、その、なんだ。がんがれ。

>>168
お前が実装しようとしているのは、世に言うドッキングコントロール。
IDEなんか、そうだろ?

ドッキングコントロールはせめてC#じゃないとつくれねぇ。
つくったソースあるけど、お前じゃ使い方さえもわからねぇ

179 :デフォルトの名無しさん:2006/11/07(火) 11:36:13
VB2005でパネルの優先順位(Zorder?)を指定したいのですが、どうす
ればいいのでしょうか?

例えば、フォームにパネル1とパネル2を置き、パネル1をのdocをTopに
パネル2にdocをFillにすると、パネル2がパネル1の下に入り込んでしま
います。パネル1をパネル2の下に入り込まないように設定するには
どうすればよいでしょうか?



180 :デフォルトの名無しさん:2006/11/07(火) 11:49:36
>>179
いよう。168。元気?

181 :デフォルトの名無しさん:2006/11/07(火) 13:15:44
>>179
splitcontainer使えば?

182 :デフォルトの名無しさん:2006/11/07(火) 13:40:37
>>181

splitocontainerは、それはそれで使用しています。
menustripやstatusstripなどをいろいろ組み合わせて配置したいので、
出来れば楽に設定できる方法が無いかと探しているところです。

みなさんは、dock機能は使わずに、アンカーやその他の方法を使用して
いるのでしょうか?

>>80
168とは別人ですが?



183 :デフォルトの名無しさん:2006/11/07(火) 13:54:28
>>182
うそつけw >>168,173,179
お前以外誰がいるんだよw



正直にいったら、なんでも教えてやるぞ。

184 :デフォルトの名無しさん:2006/11/07(火) 14:03:10
面白い奴だな。

185 :179:2006/11/07(火) 14:05:14
まじ別人なんだけどw
書き込む時間帯が全然違うじゃないかボケwww

まぁ、同一人物扱いさせてどうするつもりなんだ?

正直に言ったから早く教えろよ馬鹿www


186 :デフォルトの名無しさん:2006/11/07(火) 14:30:46
>>185
マジ、面白いやつだw

ヒント
 コントロールで右クリック。最(ry

ガンガレ!168!

187 :デフォルトの名無しさん:2006/11/07(火) 14:38:58
お前の返事の前に判ったんで、そのことを書こうと思ったら、
先に書かれてた。
ふざんけんな、ボケ!!
もっとのんびりレスしやがれwww

でも、まぁ、先に返事を書いてもらってしまったからには
礼を書いておく。ありがとよ。

それと別人だと何度言ったらわかるんだ?www
俺は昨日の23時ごろは、くりいむなんとかを見てたっつーのw


188 :デフォルトの名無しさん:2006/11/07(火) 15:26:30
(,,゚Д゚)∩先生方、質問です。
VB2005 Express Edition から、Oracle9iへの接続ってどうやったらいいのでしょうか?
いろいろ調べたところ、データベース エクスプローラーを利用できず、
コードなら使用できるということらしいのですが、その方法がぜんぜん分かりません。
どこか、参考になるサイトなどありましたら、紹介よろしくお願いします。



189 :デフォルトの名無しさん:2006/11/07(火) 15:42:00
ODBC接続だから、
コンパネから設定が必要。


190 :デフォルトの名無しさん:2006/11/07(火) 16:17:32
Editionてなんだ?

191 :デフォルトの名無しさん:2006/11/07(火) 18:07:55
>>188
初心者にはADOがオススメだ。
udlという拡張子udlのテキストファイルを使って、どんなDBにも接続できる。


ADOでぐぐって、頑張って部品作れ

192 :188:2006/11/07(火) 19:17:26
レス感謝です

>189
理由はよく分かりませんが、ODBC接続だとタイムスタンプを取得できないらしいので、ODBCは避けるつもりでした。

>191
udlファイルで試したところ、先ほど無事にADOで接続確立できました。
ありがとうございました。

193 :デフォルトの名無しさん:2006/11/07(火) 21:13:46
ComboBoxをグレーダウンさせないで入力不可に出来ませんか?
そうですか・・・

194 :デフォルトの名無しさん:2006/11/07(火) 21:25:45
>>176 いろいろ聞いた結果 モジュールを使わなくてもできるみたいです。
.NET2003でやってるのですが Meがうまく認識できないのですが使えないのかな?

195 :デフォルトの名無しさん:2006/11/07(火) 21:36:14
>>193,194
オマイラ、オレは今日はもう酔っぱらったw

明日、会社から教えてやるよ

196 :デフォルトの名無しさん:2006/11/07(火) 21:44:46
つーかフツーodp使わね?

197 :デフォルトの名無しさん:2006/11/08(水) 00:06:01
MCADって、取る価値ある?

198 :デフォルトの名無しさん:2006/11/08(水) 00:17:08
-----チラシの裏-----

C#やり始めてあまりの情報量(実用的な)が何無でやっぱVBなめちゃいかんなと
VBやり始めた初心者だけど構文とか自分にはとてもすっきりしてC#がすきだな。

でもC#の言語(Colsoleアプリ)中心のしか出回ってないから挫折しそう。。。

やっぱり初心者なら多数の本が出てるVBから入るほうがWindowsアプリ作るにしても早道かなと
自分を説得してがんばとっります。またはがんばってC#に移植するしかないですね。

ヘルプみてもどこうをどうみればいいのか・・

PCやWord&Excel等の実務Lvの操作方法には初心者というわけではないですが。

ちと愚痴と自分へのがんばれの意味をこめて。またC#に戻りそうだ。。orz

199 :198:2006/11/08(水) 00:19:28
もしヘルプ見るにしてもこうやって見るんだよ!
というアドバイスがあればぜひ教えてほしいです。


200 :デフォルトの名無しさん:2006/11/08(水) 00:45:23
>>198
とりあえずココ
http://school.topposystem.co.jp/SampleCode/TextList1.asp

あとは英語だけれど、すばらしいサンプルが多い
http://www.codeproject.com/?cat=1
http://www.codeguru.com/

自分はヘルプ見ないけど、上記3つのサイトでC#もVBも使えるレベルにはなったよ

201 :デフォルトの名無しさん:2006/11/08(水) 06:24:01
VB.NETを1から勉強したいと思うのですが、お勧めの本などありますでしょうか?

202 :デフォルトの名無しさん:2006/11/08(水) 09:00:46
>>193
適当で申し訳ないが、ドロップダウンイベントでイベントを
キャンセルできないのかな?

>>194
正確には、Meに対して、相手のフォームのインスタンスを格納している
オブジェクトにデータを渡すようにすればおk

すまんな。今日は朝からドカタ仕事が舞い込んできたから適当。

203 :デフォルトの名無しさん:2006/11/08(水) 13:16:17
質問です。

Button1をクリックして、PicturoBox1に図形を描く事はできるのですが、
PicturoBox1上にウィンドウが重なっても図形が消えないようにしたいのですが
だれか御教授ください。

204 :デフォルトの名無しさん:2006/11/08(水) 16:45:03
鳳ドロー

205 :デフォルトの名無しさん:2006/11/08(水) 17:38:27
>>203
PictureBoxのImageにBitmapをセットしてそこに描画する

206 :198:2006/11/08(水) 18:29:02
>>200 感動しました!!ありがとう!

ひとまず動かしてみる。これが一番・・・普段自分が言ってることでした・・
理解を深めるためにヘルプなり本なり読めばいいんだ。

しかし、英語サイトは情報豊富ですね。びっくりした



207 :デフォルトの名無しさん:2006/11/08(水) 23:58:38
Perlで言うHTML::TemplateやTemplateToolkitみたいな
所定のルールで書かれたテンプレートファイルを読み込んで
プログラムから置換するようなのってVB.NETではどうすればいいの?

WindowsアプリケーションからHTMLを吐く用事があって探してる所
なんか簡単な事の筈なのに簡単に出来ないこの屈辱・・・

208 :デフォルトの名無しさん:2006/11/09(木) 05:18:03
>>207
javaスクリプトでいいんじゃない?
Ajaxでぐぐってちょ。

209 :デフォルトの名無しさん:2006/11/09(木) 07:51:44
VBでコールバック関数について知りたいのですが
載っている本はたはwebを教えてください

210 :デフォルトの名無しさん:2006/11/09(木) 11:40:49
VB2005でPCからPDAにファイルをコピーするプログラムを作成しています。
その際、PCからPDAのフォルダを参照する方法がわかりません。
ローカルの場合だと、Dim SavePath As String = "C:\Data\"のように設定するかと
思いますが、PDAの場合はどのように指定すれば良いのでしょうか?
よろしくお願いしますm(_ _)m


211 :デフォルトの名無しさん:2006/11/09(木) 12:15:39
PDAによる。

212 :210:2006/11/09(木) 12:19:22
>>211

 レスありがとうございます。
 情報足らずでスミマセン。
 PDAはNTTのhTcZです。(Windows Mobile 5.0)


213 :デフォルトの名無しさん:2006/11/09(木) 19:39:18
logフォルダに入っているlogファイル一覧を表示させるプログラムを作りたいのですが
パス指定がよくわからなくて困っています。
私は普段Dドライブで作業しているのですが、提出用のプログラムなので
提出後Cドライブや他の場所で実行されるかもしれないので、
ドライブ場所に影響されることのないパス指定をしたいのですが・・

最終的には
フォルダ--------exeファイル
      |
      ------logフォルダ-------logファイル

という形にしたいと思っています。

214 :デフォルトの名無しさん:2006/11/09(木) 20:05:26
>>213
Application.StartupPath

215 :デフォルトの名無しさん:2006/11/09(木) 20:09:37
Application.StartupPath とか
My にもなんかありそうだな

制限ユーザでは program files 以下には書き込めないと言う事実をどれくらいのホビープログラマが知っているだろう

216 :デフォルトの名無しさん:2006/11/09(木) 20:35:52
>>214-215
ありがとうございます。
現在制作環境にいないのでアドバイス通りに制作してないのですが
先にお礼を言わせてください。

217 :デフォルトの名無しさん:2006/11/09(木) 21:10:32
PictureBox1を縦横違うスケールに拡大,あるいは縮小すると,
図形と一緒にテキストまでゆがむんですがどうすればいいでしょうか

218 :デフォルトの名無しさん:2006/11/09(木) 21:25:45
はぁ?
どうすればいいでしょう、ってそんなことでつまずく馬鹿はプログラムなんて
書かなければいいと思うよマジで。

219 :デフォルトの名無しさん:2006/11/09(木) 21:51:36
>>214
お前、本当の意味でマヌケだな。


>>213
相対パスでぐぐれ。
あと、マヌケな回答が多いから注意汁。

>>217
まぁ、その、なんだ。
がんがれ。

しいていうなら、何がしたいんだ?


220 :デフォルトの名無しさん:2006/11/09(木) 22:00:18
カレントディレクトリは常に exe のある位置であるという立場の人ですか?

221 :デフォルトの名無しさん:2006/11/09(木) 22:06:08
なんていうか、口調が偉そうな奴は例外なく無能の法則って絶対だなw

222 :デフォルトの名無しさん:2006/11/09(木) 22:07:48
>>220
いや、単に馬鹿なだけでしょう。

223 :デフォルトの名無しさん:2006/11/09(木) 22:21:09
>>222
いや、「マヌケな」人でしょう。

224 :デフォルトの名無しさん:2006/11/09(木) 22:21:40
>>220,222
理解してるな。


>>221
おまいは、ちょっと怪しいぞw

225 :デフォルトの名無しさん:2006/11/09(木) 23:05:20
みなさま、すんません。
知ってたら教えてください。
VS2003でWebアプリをつくっております。(VB.NETです)
DBがオラクルなので
.NET Framework Data Provider for Oracle
(System.Data.OracleClient)
のクラスをつかってるのですが
タイムアウトの設定でできないのでしょうか?
すんません T_T

226 :デフォルトの名無しさん:2006/11/09(木) 23:24:33
Microsoft FlexGrid Cotrol,version6.0を使っている
formをshowdialogで開くとForm_Loadで何をやっても反映されないんだけど
どうして?
ちなみにshowdialogを使わずに直接実行すると反映された

227 :デフォルトの名無しさん:2006/11/09(木) 23:44:11
>>225
OracleCommand.CommandTimeout
メモ : このプロパティは、.NET Framework version 2.0 で新しく追加されたものです。

MSはボラクルに冷たいな〜
System.Data.OleDb使えば?

228 :デフォルトの名無しさん:2006/11/09(木) 23:46:37
>>226
Form_Load時点でFlexGridが表示されてないから?

229 :デフォルトの名無しさん:2006/11/09(木) 23:57:51
>>227

ありがとうございます。
現行の環境が1.1なもので…
やはりOleDbがいいですかね?
私の設定が悪かったのかもしれませんが
OleDb空間のクラスで接続しレコードを取得したら
ROWIDまでとってきちゃってたので
OracleClientにしたのです。
OleDbでもっかい試してみます。
どもです。

230 :193:2006/11/10(金) 00:04:27
Win32APIを使わないと駄目っぽいな。Orz

231 :デフォルトの名無しさん:2006/11/10(金) 01:05:39
何でODP使わないんだろ

232 :デフォルトの名無しさん:2006/11/10(金) 06:13:28
>>231
しつけぇよw


おれが講師で初心者にDBアクセス教えるなら
絶対、ODPなんか使わない。

教える側もそう思ってるから、教えない。


ほんと、バカの一つ覚え(ry

233 :デフォルトの名無しさん:2006/11/10(金) 07:02:34
>制限ユーザでは program files 以下には書き込めないと言う事実をどれくらいのホビープログラマが知っているだろう
制限ユーザでも program files 以下に書き込む方法があると言う事実をどれくらいの職業プログラマが知っているだろう



234 :217:2006/11/10(金) 16:19:08
>219
pictureboxのスケールを変えてグラフを書きました.しかし,ラベルや目盛りが
drawstringではゆがんで掛けないんです.
横のスケール伸ばしたら文字も横に伸びるってことです.
どうか助けてください

235 :デフォルトの名無しさん:2006/11/10(金) 17:28:59
>234
引き伸ばしてからdrawするのが普通だろ!


236 :デフォルトの名無しさん:2006/11/10(金) 19:31:57
>>233
どうやるんだ? 教えれ!!

237 :デフォルトの名無しさん:2006/11/11(土) 00:31:49
>>231

クライアントが8.1.7なんです。
バージョンアップの許可がおりるかどうか…

238 :デフォルトの名無しさん:2006/11/11(土) 08:18:03
>>237
ハハハ、ウチなんか8.0.5ですぜw
OO4O以外テがありませんorz

239 :デフォルトの名無しさん:2006/11/11(土) 09:15:01
>>238
つ OCI

240 :デフォルトの名無しさん:2006/11/11(土) 09:22:16
Webサービス使えば?

241 :デフォルトの名無しさん:2006/11/11(土) 09:46:38
別に、なんでアクセスしようがどうだっていい。

242 :デフォルトの名無しさん:2006/11/11(土) 10:32:25
>>239
oci.dllを参照に追加しようとしたら「正しいdllでありません」と言われたが…

243 :デフォルトの名無しさん:2006/11/11(土) 12:51:44
>>242
<Runtime.InteropServices.DllImport("oci.dll", ・・・以下省略

244 :デフォルトの名無しさん:2006/11/11(土) 12:57:00
ドゥルル

245 :デフォルトの名無しさん:2006/11/11(土) 13:56:23
管理ツールの中に
Microsoft .NET Framework 1.1 Configuration
Microsoft .NET Framework 1.1 Wizards
Microsoft .NET Framework 1.1 構成
Microsoft .NET Framework 1.1 ウィザード
の四つがあるのに
Microsoft .NET Framework 2.0 Configuration
はひとつしかありません。
インストールに失敗したということですか?

246 :デフォルトの名無しさん:2006/11/11(土) 14:00:53
Microsoft .NET Framework 1.1 Configuration
Microsoft .NET Framework 1.1 Wizards
Microsoft .NET Framework 1.1 構成
Microsoft .NET Framework 1.1 ウィザード
みんなひとつしかないと思うのだよ。


247 :217:2006/11/11(土) 17:47:58
>235
すいません、その方法をどうか御教授ください。
おねがいします。

248 :デフォルトの名無しさん:2006/11/12(日) 03:52:35

クソ言語 VB.NET




249 :デフォルトの名無しさん:2006/11/12(日) 11:54:27
>247
どうやって描画してるのかしらんけど。。
描く順番と拡大縮小する順番を逆にするだけだろ!

250 :デフォルトの名無しさん:2006/11/12(日) 14:04:38
>>245
Microsoft .NET Framework 2.0 構成 だね。

ランゲージパックのインスコは失敗してるな。w


251 :デフォルトの名無しさん:2006/11/13(月) 05:26:27

クソ言語 VB.NET




252 :デフォルトの名無しさん:2006/11/14(火) 12:39:05
フォームのデザインをやり直したいのですが、今フォーム上にある
コントロールをどこかに一時的に退避させておくことってできますか?

253 :デフォルトの名無しさん:2006/11/14(火) 13:45:26
>>252
ソリューションエクスプローラでファイル選んで
コピー&ペーストしてから、コピーの方のコード開いて
クラス名変えたらええやん。

254 :デフォルトの名無しさん:2006/11/14(火) 15:35:08
flexgrid.netについてですがやさしいかた教えてください。

CellのstyleにComboListを設定したのですが
実行時にそのセルをダブルクリックすると
ComboList内の値に順次変更されます。
これをやめたいのですがキャンセルする方法はありますか?

あと、一度に表示するリストの数の設定方法もわからないのですが
ご存知のかたおられましたら教えてください。

よろしくお願いします。

255 :デフォルトの名無しさん:2006/11/14(火) 16:38:32
>>254
.NETってMSでフレックスグリッドあったっけ?
グレープシティのとは別?

あとフレームワークのバージョン教えれ。

256 :デフォルトの名無しさん:2006/11/14(火) 16:44:08
>>255
グレープシティのです。すみません。

VB.net2003です。

257 :デフォルトの名無しさん:2006/11/14(火) 19:56:18
textbox1.textと同じ文字列が、Listbox1のリストの中に存在するかどうかを調べ、
存在する場合はリストの中から消すという一連の動作を実装したいのですが、どのように書けば良いでしょうか?

For i = 0 To x
   If String.Equals ( textbox1.text, listbox1.Items,Item ( i ) ) = True Then
      listbox1.Items.RemoveAT ( i )
   End If
Next

これでいけるかと思ったのですが2行目でエラーが出ます。
どうやら引数の2つ目がStringではなくObjectだからなんだと思うのですが、
どうすれば良いのか判りませんorz
よろしくお願いします。

258 :デフォルトの名無しさん:2006/11/14(火) 20:10:37
ToString

259 :デフォルトの名無しさん:2006/11/14(火) 23:28:57
>>257
なんつー気持ち悪いコードだ

String型の比較は、=にしやがれ

260 :デフォルトの名無しさん:2006/11/14(火) 23:29:46
今日、.NET Framework SDK1.1をインストールしたのですが、
インストールすると見れる.NET Framework SDKドキュメントを
CDなどに焼いて他のネット環境の無いPCでも見ることは可能でしょうか?

もしスレ違いなら誘導していただけると助かります。


261 :デフォルトの名無しさん:2006/11/14(火) 23:33:39
しかもこれ該当する場所が複数あって
最後のほうにもっかい見つかったら例外起こすよなw

For文も step -1 で逆順にして

>>259の意見には同意するなw
if listbox1.items(i).ToString = textbox1.text then
だよなぁ

たしかListboxで読み取るだけならitems(i)までで文字列取得できたかと

262 :デフォルトの名無しさん:2006/11/15(水) 09:18:15
ttp://www.amazon.co.jp/gp/product/4891005254/

ttp://www.amazon.co.jp/gp/product/4891005262/
読んだ。
次は何読めばいい?

263 :デフォルトの名無しさん:2006/11/15(水) 09:41:23
>>259,261
カスめ。
OOPわからないんだったら、VB6.0で遊んでろ。


>>257
.NETでの文字列比較はオブジェクトから派生したStringクラスが持つ
Equals メソッドを使うのが一番いい。レスポンスも高い。
だから、お前はちょっとおしい。

If TextBox1.Text.Equals(ListBox1.Items.Item(1).ToString()) Then
’ここに処理既述
End If

で、おまいがやろうとしている事は知恵をつかわないとできない。
たとえば、いきなり消すんじゃなくて、ループの中で消したいアイテムを
選択状態にして、ループの終了後に選択項目だけを削除するようにするとか。

ガンガレ。


264 :デフォルトの名無しさん:2006/11/15(水) 09:55:42
>>254
面倒くさいからためしてないけど、ダブルクリックイベントで
イベントをキャンセルするか、現在選択している項目を再選択
させるかで実現できない?

あと、一度に表示できる行数だけど、プロパティにないなら、APIじゃないと
だめなんじゃないの?

最後に、スキルがあるなら、セルに合わせて通常のコンボボックスを
ぴったり描画してやると、グレープシティのウンコグリッドよりも余程使い勝手が
いいと思うよ。

265 :デフォルトの名無しさん:2006/11/15(水) 10:15:10
>>257
String.Equalsメソッドは、引数オブジェクトのToStringメソッドをコールする癖をつけないと、
痛い目見るぞ

それがいやなら=使っとけ

あと>>261の言うとおり、
ListItemCollectionのitemをRemoveすると、Collectionの中身が前詰めされるので、気をつけろ


266 :デフォルトの名無しさん:2006/11/15(水) 11:11:18
>>265
2個前のレス(>>263)くらい読めよ。

第一、step -1 で逆順にしてもループする回数がかわらねぇだろうが。


本当の意味で救いようがない。
バカなんだから、半年ROMってろ。


267 :デフォルトの名無しさん:2006/11/15(水) 11:15:04
逆順にしてケツから消していくのは定石じゃない?

268 :デフォルトの名無しさん:2006/11/15(水) 11:28:43
定石だよ

269 :デフォルトの名無しさん:2006/11/15(水) 11:34:57
>>263
> たとえば、いきなり消すんじゃなくて、ループの中で消したいアイテムを
> 選択状態にして、ループの終了後に選択項目だけを削除するようにするとか。
コードで書いてくれ

270 :デフォルトの名無しさん:2006/11/15(水) 11:56:55
フラグ立てて刈り取りじゃないか

271 :デフォルトの名無しさん:2006/11/15(水) 11:57:32
質問させてけれ〜。

VS2003
VB.NET
.NET Framework1.1

で開発してるんだけども、VB6以前で比較的よく使われてたフォームの表示の仕方

Load frmObj
frmObj.Show

と同じようなことってVB.NETで出来ないかな?
過去同じような質問がでてれば、ポインタかキーワード
がもらえると助かります…。

272 :263:2006/11/15(水) 12:21:30
>>269
そういう時は先生にエロ画像でも提供汁。気がきかねぇ。

Dim x As Integer
Dim y As System.Windows.Forms.SelectionMode = ListBox1.SelectionMode

  '描画停止
  ListBox1.BeginUpdate()
  '選択解除
  ListBox1.ClearSelected()
  '複数選択可に変更
  ListBox1.SelectionMode = SelectionMode.MultiExtended
  For x = 0 To ListBox1.Items.Count - 1
    If TextBox1.Text.Equals(ListBox1.Items.Item(x).ToString()) Then
      ListBox1.SetSelected(x, True)
    End If
  Next x
  '選択されている項目を削除
  For x = ListBox1.SelectedIndices.Count - 1 To 0 Step -1
    ListBox1.Items.RemoveAt(ListBox1.SelectedIndices(x))
  Next x
  '選択モードを退避前に戻す。
  ListBox1.SelectionMode = y
  '描画再開
  ListBox1.EndUpdate()

273 :デフォルトの名無しさん:2006/11/15(水) 12:31:38
>>271
もし、それがドトネトでできないなら、OOPとは言わない。

うんこから帰ってきたら、教えてやるよ。

274 :デフォルトの名無しさん:2006/11/15(水) 12:36:59
>>272
Equalsが一番レスポンスがいいとか言ってるくせに
非常に無駄なことをしているように見えるのは俺だけ?

275 :デフォルトの名無しさん:2006/11/15(水) 12:39:53
なんか馬鹿と馬鹿が争ってる感じだねw
このスレらしいけど。

.NETでは文字列の等価性の検査に= とか==演算子使え、っていうの自体は正論だけど
Equalsが気持ち悪いっていうのはどうかね。
気持ち悪いっていうのは不自然と言い換えていいと思うが、文字列の等価性が
=で検査できちゃうことの方が(便利ではあるが)不自然で気持ち悪いんだよ本来は。

それからコレクションのアイテムをシークして削除するときに
シークしてるループの中で直接削除しちゃうデザインっていうのはどうなの?w
ループカウンタをデクリメントで回すとかそういう問題か?

そういうのは普通、あらかじめ削除する(または逆に「削除せず残す」)アイテムのコレクションを
作成しておいてからまとめて削除(あるいは総とっかえ)するコードを書くでしょ。

276 :263:2006/11/15(水) 12:52:49
本当にごめんなさい。
これですんでしまいました。


Dim x As Integer
  For x = ListBox1.Items.Count - 1 To 0 Step -1
    If TextBox1.Text.Equals(ListBox1.Items.Item(x).ToString()) Then
      ListBox1.Items.Remove(ListBox1.Items.Item(x))
    End If
  Next x

ちょっと吊ってきます。

277 :デフォルトの名無しさん:2006/11/15(水) 13:01:00
>>271

dim f As frmObj
  
  ’この時点で画面にあるコントロールのイニシャライズが走る。
  Set f = New frmObj

#Region " Windows フォーム デザイナで生成されたコード "
↑この中のNewのメソッド(オブジェクトのコンストラクタ)が走る。

次に自分がフォームに事前にやらせたい処理、例えば、VBの頃に
ロードイベントに書いていたような処理をやらせたいのであれば、
その処理を外部に公開するメソッドとしてフォームに書いておいて

  Set f = New frmObj
Call f.初期化処理

のようにメソッドをCallする。
もしくは、あまり進めないが、オブジェクトのコンストラクタ配下に書いても
処理は走る。

最後にShowすればおk。



278 :271:2006/11/15(水) 13:03:52
ありがとう。助かったデス。

279 :デフォルトの名無しさん:2006/11/15(水) 13:07:18
>>275
Items.RemoveAtによってSelectedIndicesも削除されるのを知ってて言ってるんだよな?
直接逆順ループでRemoveするのと何が違うんだ?

280 :デフォルトの名無しさん:2006/11/15(水) 13:20:32
>>279
気にするな。
デザパタをちょっと勉強して、コードにデザインを持たせようと
してるようだけど、全てが当てはまるわけじゃない良い例がコイツ>>275

ちなみに、>>275はjava糞くせぇにおいがする。
C房はそんなことしない。

281 :デフォルトの名無しさん:2006/11/15(水) 13:27:57
>275

定番中の定番なんだから、デクリメントで回せばいいって問題以外の何者でもないと
思うが。どうしてもインデックスループ中での削除が嫌ってのなら、効率は
落ちるが
Dim count As Integer
Do
count = ListBox1.Items.Count
ListBox1.Items.Remove(TextBox1.Text)
Loop While count <> ListBox1.Items.Count
とかもありだな。ListBoxで扱う量が大した事無ければ、実際には効率が
問題になることもないだろうし。
しかし、インデックスループがアレだからといいつつ、結局インデックスループを
してるし、意図がよくわからん。




282 :デフォルトの名無しさん:2006/11/15(水) 13:46:21
>>264
こんなものに知恵なんか使うか、理屈ばっかりで頭は良くないな。
Dim i As Integer = 0
Do
  If ListBox1.Items(i).ToString.Equals(TextBox1.Text) Then
     ListBox1.Items.RemoveAt(i)
  Else
     i += 1
  End If
Loop While (i < ListBox1.Items.Count)

283 :デフォルトの名無しさん:2006/11/15(水) 15:05:46
>>282
志村・・・あ、アンカー・・・


それに、お前のコードよりもまだ>>281の方がマシ。

お前は理屈すら屁がついてる。

284 :デフォルトの名無しさん:2006/11/15(水) 16:15:53
>275の9行目以降のような合理的というか効率的な(?)考え方ってどうやって身に着けるものなんでしょうか
なぜ>275のようにした方が良いのかという点からしてわかりませんが・・・
良い教科書無いかなぁ

285 :デフォルトの名無しさん:2006/11/15(水) 16:18:07
>275を読んだ時点で書き込んだけど後についてるレス見ると>275が正しいとも云えないみたいですね
でも結局>284の質問は変わらないのでよろしくお願いします

286 :デフォルトの名無しさん:2006/11/15(水) 16:19:41
すぐ教科書を欲しがるのは良くないですよ。

287 :デフォルトの名無しさん:2006/11/15(水) 16:22:23
>>284
オブジェクト指向を身につけて、デザインパターンを勉強汁。

参考までに
ttp://www.objectclub.jp/

ガンガレ。

288 :デフォルトの名無しさん:2006/11/15(水) 17:18:46
VB.netのくだしつスレが見当たらなかったからここで質問してみる
P2Pのチャットソフト作ろうと思ってるんだけど
使う両者が特定の人間ならIPでつながる?

289 :デフォルトの名無しさん:2006/11/15(水) 19:19:16
ttp://up2.viploader.net/pic2d/src/viploader2d156038.jpg
ttp://up2.viploader.net/pic2d/src/viploader2d156023.jpg

290 :デフォルトの名無しさん:2006/11/15(水) 20:10:30
>282
志村〜。やっぱ知恵は使ったほうがいいとおもうよ?
あからさまにバグってるぞ。


291 :デフォルトの名無しさん:2006/11/15(水) 21:15:35
ループの中で要素数が変わるんじゃないか

292 :デフォルトの名無しさん:2006/11/15(水) 21:23:22
つか、境界条件。
空のリストで動かせば一発。


293 :デフォルトの名無しさん:2006/11/15(水) 21:24:11
空の境界。




ごめんなんでもない

294 :デフォルトの名無しさん:2006/11/15(水) 21:28:26
>>272があほにしか見えない

295 :デフォルトの名無しさん:2006/11/15(水) 21:29:29
本来=で比較できるのがおかしいって
本来ってなんだ本来って

296 :デフォルトの名無しさん:2006/11/15(水) 21:36:56
>>295
いや、それに関しては否定できないと思う。


297 :デフォルトの名無しさん:2006/11/15(水) 21:40:54
演算子のオーバーロードはデグレードなのか?

298 :デフォルトの名無しさん:2006/11/15(水) 21:52:50
演算子のオーバーロードと言う言い方は良くない。

ちなみになんのことをいってるの?

299 :275:2006/11/15(水) 22:01:19
>>284-285
正しい正しくないという問題というより、
どちらがシンプルで直観的であるか、あるいは応用が利くか、という問題だね。

まあどういう方法がより直観的かはあるいは意見が分かれるかもしれないけど、
応用度の方は自明だね。
例えば後から「文字列が一致するアイテムの前後のアイテムも削除する」という
仕様変更があった場合、>>261みたいなプログラマは困るんじゃないの?w

デザパタとか言ってる人がいるけど俺はいわゆるデザパタにこういうパターンが
あるのかどうか知らない。
ただある程度まともなPGならこういう場合は>>275のように考えるだろう。

300 :デフォルトの名無しさん:2006/11/15(水) 22:04:21
>284-285

OOPらしくというなら、ListBox1に対し「○○をリストから消せ」と指示して
Itemsの何番目かとかの細かい話はListBox1にやらせる>281の方が、言ってることと
やってることがデタラメな>275よりずっと近いよ。


301 :デフォルトの名無しさん:2006/11/15(水) 22:52:16
>>298
これの事を言ってるのだが。違うのか? スマンカッタ。Orz

http://www.microsoft.com/japan/msdn/vs05/vbasic/vboperatoroverloading.aspx

302 :デフォルトの名無しさん:2006/11/16(木) 01:06:01
根本的に後で修正がきかないような箇所ならともかく、
その時点で完全に変えてしまうようなコードの部分に
応用度を最初から用意しておくのは、悪くはないけど、
そうしないのが馬鹿みたいなのはどうか。
XPの理念にも反する。


303 :デフォルトの名無しさん:2006/11/16(木) 01:35:04
応用にもなんにもなってない上に、>>272にしても>>282にしてもどっちも不必要に複雑にして
さらに副作用やらバグありやらだしなー。
悪くはないじゃなくて、率直に言ってダメコードの見本だ。


304 :デフォルトの名無しさん:2006/11/16(木) 06:34:45
>>301
いやいや!


本当に演算子の\だの=だのをオーバーロードしてるね!

オレは2005はまだ案件も来てないし使ってないけど
こんな機能が追加されたのか〜・・・


う〜ん?2005のフレームワークを逆コンパイルすると
演算子のクラスでもあるのかな?

そこはちょっと興味ある。

305 :275:2006/11/16(木) 08:15:10
>>302-303
まあ縁なき衆生は度し難しというからね。
俺は>>272とか>>282みたいなのが良いなんていってないしw

306 :デフォルトの名無しさん:2006/11/16(木) 08:58:32
>>275
もうお前飽きたから、雑談がしたいなら雑談板にいけ


307 :デフォルトの名無しさん:2006/11/16(木) 09:07:08
>>275
度し難しなのはお前。反論するならコードでも出してやるこった。
単なる俺様マンセーな話を続けるなら他所でやってくれ。


308 :デフォルトの名無しさん:2006/11/16(木) 09:53:58
>>307 同意、書けるんだったら初めから書いてる罠。
と言うことで一件落着、次いってみよう。

309 :デフォルトの名無しさん:2006/11/16(木) 12:41:36
こんな奴らばっかりだからVBプログラマは一段下に見られるんだよね。
馬鹿な癖に馬鹿を自覚してないし、物事をシンプルに考える能力がない。

  Private Sub RemoveMatchItems(ByVal Text As String)
    Dim aliveItems As New ArrayList

    For Each item As Object In ListBox1.Items
      If item.ToString <> Text Then
        aliveItems.Add(item)
      End If
    Next

    ListBox1.Items.Clear()
    ListBox1.Items.AddRange(aliveItems.ToArray)
  End Sub

まあ>>261のような考え方で書いたコードとどちらがより可読性があり
どちらがより仕様変更に強いかの判断は任せるよ。
まあその判断能力自体がビッグクエスチョンなんだけどw

310 :デフォルトの名無しさん:2006/11/16(木) 12:49:17
>>309
何度も同じ事を言わせんなよ。


>>306-308
もう終わったんだよ。



バカなのか?
失せろ。

311 :デフォルトの名無しさん:2006/11/16(木) 12:59:24
>309

あのさ、さんざん指摘されてるが、そのコードでは削除対象に含まれない
SelectedItem(s)とかもクリアされちゃうとか、リストビューが必要以上に
スクロールしちゃうケースが出てくるとかの影響なんかは理解してる?

実務経験が少ないのなら仕方ないけど、リストボックスみたいな
UIコントロールは見た目の動きも重要なんですよ。


312 :デフォルトの名無しさん:2006/11/16(木) 14:59:21
だから>>309は一段下に見られちゃうってことでFA?

313 :デフォルトの名無しさん:2006/11/16(木) 15:05:49
>>312

見ろよ。こいつ>>309
>馬鹿な癖に馬鹿を自覚してない

一段どころか、モノホンのバカなんだよ。

で、もうこの話題は飽きたんだ。

314 :デフォルトの名無しさん:2006/11/16(木) 17:12:24
>>309
文字列どうしの比較はEquals()を使えって行ってるだろ。
まさかおまえ275と同一人物じゃないだろうな。
もういい、次、次、次。

315 :デフォルトの名無しさん:2006/11/16(木) 17:47:11
エクアルスとか面倒なだけだろ

316 :デフォルトの名無しさん:2006/11/16(木) 18:09:19
>>315
( ・ω・)・・・イコールだよ・・・・

317 :デフォルトの名無しさん:2006/11/16(木) 19:51:39
>>314
Equals使えってじゃばじゃないし。

318 :デフォルトの名無しさん:2006/11/16(木) 19:52:42
ポカリスエットとはちがうのか

319 :デフォルトの名無しさん:2006/11/16(木) 19:55:34
>>318
それはアミノサプリだろ!

…???あれ????

320 :デフォルトの名無しさん:2006/11/16(木) 20:14:02
エアリスのことかーーー!!

321 :デフォルトの名無しさん:2006/11/16(木) 20:41:19
>309が話題を流そうと必死になっているようだ。


322 :デフォルトの名無しさん:2006/11/16(木) 20:49:50
データグリッドについてきいてもいいか

323 :デフォルトの名無しさん:2006/11/16(木) 20:56:37
標準の?
フレームワークは?

324 :デフォルトの名無しさん:2006/11/16(木) 21:25:41
>>322
苦しゅうないよきに計らえ。

325 :デフォルトの名無しさん:2006/11/16(木) 21:57:18
データグリッドで、
プロパティから「編集、更新、キャンセル」
ボタンを追加したのですが、編集モードに
切り替わらないのです。もちろん、EditCommandの
イベントハンドラにコードは記述してあります。
ステップ実行すると、イベントとして認識されて
いないように思えるのですが。(Page_loadメソッドを見にいく)
教えてください、神様。

326 :デフォルトの名無しさん:2006/11/16(木) 22:12:25
>>309
「物事をシンプルに考える能力がない」には同意。

簡単な事を小難しくコーディングするヤツが大杉。
物事の本質的な部分がわかってないからそうなるんだな。たぶん。

327 :デフォルトの名無しさん:2006/11/17(金) 00:10:12
マッチする項目がなくても全部消して追加すんのかよ

328 :デフォルトの名無しさん:2006/11/17(金) 00:28:59
>327
既出の動きが変わる件やら、DataSourceにbindingされていたらダメじゃんとか、
応用応用いいながらListboxコントロールをCheckedListBoxに変更されたら
やり直しじゃんとか、突っ込みどころ満載なのはもう十分わかってるから、
せっかく逃亡しているんだからそっとしておいて、次の質問に備えようよ。

で、いまいち説明がよくわからんので、出せる範囲でいいのでコードを
つけて説明してもらえるとコメントがつきやすいぞ >325
あと、DataGridなのか、DataGridViewなのかもね。


329 :デフォルトの名無しさん:2006/11/17(金) 04:08:12
>>326
そういうやつらは少ない時間に多量のコーディングができると思われるので逆に評価が高い

330 :デフォルトの名無しさん:2006/11/17(金) 08:20:37
>>328
突っ込みどころ満載、って
それこそ突っ込みどころ満載だな。

馬鹿な癖に馬鹿を自覚してない、とはこういうことを言うんだけどねえw

331 :デフォルトの名無しさん:2006/11/17(金) 08:50:06
具体的に突っ込んでくれないと説得力ないよ

332 :デフォルトの名無しさん:2006/11/17(金) 12:15:37
>>331
ウホッ!

333 :デフォルトの名無しさん:2006/11/17(金) 13:25:15
>>330
せっかく逃亡したのなら、そのまま逃げてりゃいいのに。
なんでわざわざ恥をさらしに戻ってきたがるのやら。


334 :デフォルトの名無しさん:2006/11/17(金) 14:34:15
>>333
>>330は実は女でツンデレ。
このスレが好き。

もう少し、デレを出して欲しいよ。

335 :デフォルトの名無しさん:2006/11/17(金) 20:56:46
別にあんたたちのために帰ってきたんじゃないんだからね

336 :デフォルトの名無しさん:2006/11/18(土) 03:37:15
>>314
まだこんなこと言ってるやつがいるのか……

>>325
まさかまた、Page_LoadでPostBack時にもDataGridの中身をBindしている、
とかいうオチじゃないだろうな?

編集ボタンが押された後は
Page.PageLoadイベント

DataGrid.EditCommandイベント
の順でイベントが発生するけど、
PageLoadイベントのイベントハンドラーで、DataGridの中身を、再バインドしてたら、
DataGridのイベントは、発生しないぞ

337 :デフォルトの名無しさん:2006/11/18(土) 18:48:23
初めての質問です。プログラムを書いていて何点か質問です。
ビルドしたbin の中に ja ってフォルダがあるのですが、これも配布しなくては
いけないものでしょうか?なくても動く気がしたので。
また、同様にFrameWorkに依存するのではなかろうかというDLL関係は
一緒に配布したほうがよいのでしょうか?
Microsoft.VisualBasic.dll
System.Web.dll
他 よろしくお願いします。


338 :デフォルトの名無しさん:2006/11/18(土) 19:06:05
>>337
jpフォルダはFormのLanguageプロパティを日本語にするなどで、日本語リソースを作るとできる。
要配布。もしその中が空なら無視してよい。
Microsoft.VisualBasic.dll 、System.Web.dll は.NETフレームワークが入っていれば必ずあるのもで、
配布したいなら再頒布可能パッケージ(dotnetfx.exe)を添付するべし。 


339 :337:2006/11/18(土) 19:32:13
>338 ありがとうございます。
もう一つ質問させてください。
.net 2003 使用してますが、SP1 を当てた場合。
配布先に新しくビルドしたプログラムを入れた場合、なにか注意点ありますか?
FrameWork に準ずると思ってるので関係ないとおもってるのですが確信が
なくて。また、Framework1.1 にも微妙にバージョン違いのものがあるかと
思いますが、開発環境ビルドものPCのFramework1.1 のバージョンと配布先
クライアントのFramework1.1のバージョンは合せて置くものでしょうか?
グレープシティの製品のDLLが微妙にアップデートがあったりで
統一した方が良いのでしょうけど台数が数百台とかある場合みなさま
どうされてるんだろうと思いまして・・・



340 :337:2006/11/18(土) 19:36:58
読み直したらめちゃくちゃ理解しがたい文章書いてしまいました。
すいません。
よろしくお願いします。



341 :デフォルトの名無しさん:2006/11/18(土) 20:02:41
理解しがたいと自覚したならリライトしようよ。

SP はバグつぶしのためのものなので当然当てるべき。
SP 当ててりゃ .NET Framework のバージョンは悩まないで良い。同じ。
サードパーティのはサードパーティにバージョン管理のポリシを聞くべきだな。
Microsoft はマイナーバージョンまでが同じなら相互互換性を達成させておくべきだというガイドラインを示してるけど。

342 :デフォルトの名無しさん:2006/11/18(土) 20:19:39
NetworkStreamクラスのWriteメソッドについて質問させてください
Writeメソッドは書き込むデータをbyteの配列で指定するようなのですが
byte型だと負の値が使用できません
NetworkStreamクラスで負の値を使用したい場合はどうすればいいんでしょうか?

343 :デフォルトの名無しさん:2006/11/18(土) 20:25:47
何をしたいのかさっぱり分からんが、BinaryWriter 使えば?

344 :デフォルトの名無しさん:2006/11/18(土) 20:33:33
>>343
JavaのDataOutputStreamクラスのwriteメソッドと同じ機能を.NETで実現したいんです
BinaryWriterだとファイルIOにしか使えなくないですか?
ネットワークIOでbyte型の負の値を使用したいです


345 :デフォルトの名無しさん:2006/11/18(土) 21:25:06
BinaryWriter は Stream に対するバイナリ書き込み用クラスだ。
意味は分かるな?

言っておくが StreamWriter もそうだぞ。> Stream に対する

346 :デフォルトの名無しさん:2006/11/18(土) 23:16:11
つーか正か負かなんて関係ないんじゃね?

347 :デフォルトの名無しさん:2006/11/19(日) 00:02:02
>BinaryWriterだとファイルIOにしか使えなくないですか?
何を見てそう思ったのか不思議だ。


348 :デフォルトの名無しさん:2006/11/20(月) 03:56:11
VB.NET 2003でボタンを押すたびに音声ファイル(WAV)が流れるように
するにはどんなコードを書けばいいんでしょうか?

349 :337:2006/11/20(月) 09:11:54
いつも、開発環境とクライアントの環境で意味不明のエラーがでてまして
どうやらそのあたりに関係がありそうです。
これから調べはじめます。
.dll とかそのた依存ファイルがBin の中にうんざりするほど
入れてたのでそれの整理からはじめます。
いろいろありがとう御座いました。

350 :デフォルトの名無しさん:2006/11/20(月) 10:49:16
あまりに初歩的な質問で恐縮なのですが、子供の為にボタンを使ったゲームを作っています。
ボタンが複数ある場合で任意のボタンの色を変えたいのですが、その際10個のボタンがある場合に

b=変えたいボタンの番号
if b=1 then Button1.BackColor = System.Drawing.Color.Blue
if b=2 then Button2.BackColor = System.Drawing.Color.Blue




のようなコードになるのでしょうか。
配列変数のように
button(b).BackColor = System.Drawing.Color.Blue
のようなボタンの指定の出来れば一行ですむのですが、VBでは出来ないのでしょうか?




351 :デフォルトの名無しさん:2006/11/20(月) 11:15:13
>>350
Buttonをあらかじめ配列やリストにつっこんどいてループ。
あるいはform1.Controlsをループでまわして当該ボタンと比較

352 :350:2006/11/20(月) 11:23:05
>>351
>Buttonをあらかじめ配列やリストにつっこんどいてループ。

回答ありがとうございます。
Buttonを配列変数に代入するということなのでしょうか?

353 :デフォルトの名無しさん:2006/11/20(月) 12:19:16
Private btn(9) As System.Windows.Forms.Button

とかでもいいんでね?


で、最初に上の変数にボタンオブジェクトを代入しておいて
変えたい場合に
btn(0).BackColor = System.Drawing.Color.AliceBlue


354 :337:2006/11/20(月) 12:24:45
度々すいません よく、Binの中に
AxInterop.・・・
Infragistics.・・・
Interop.・・・
という、ある程度ルールに基づいてファイルができているかとおもいますが
この3つのファイルの名前の付け方の意味をご教授願えますでしょうか
検索したのですが詳しくわかるページがなかったもので・・・


よろしくお願いします。



355 :350:2006/11/20(月) 12:33:34
>>353
回答ありがとうございます。
ボタンのそれぞれの名前をbtn(0)〜btn(9)のようにしておけばよい
ということなのでしょうか。
大昔の行番号のあるBASICしかやったことがないのでオブジェクトというものが理解出来ておらず
要領を得ない質問ですいません。

356 :デフォルトの名無しさん:2006/11/20(月) 12:43:54
>>355
いやいや。
ドトネトになってコントロール配列は不可になったんだよ


ボタンの名前はなんでもおk。
試しにボタンのオブジェクト名が【btnTest】【btnHoge】 として
最初の起動時にでもさっきのPrivateの変数に対して

btn(0) = btnTest
btn(1) = btnHoge
   ・
   ・
   ・
というように10個分変数に代入。

そのあとは変数を参照して5個目のボタンなら
btn(4).BackColor = System.Drawing.Color.AliceBlue
見たいにすればおk



357 :デフォルトの名無しさん:2006/11/20(月) 12:45:40
>>355
http://dobon.net/vb/dotnet/control/buttonarray.html
の下の方

358 :350:2006/11/20(月) 13:34:59
>>356
>>357
ありがとうございます!
さっそくやってみます


359 :デフォルトの名無しさん:2006/11/20(月) 13:44:30
>>354
フレームワーク以外の参照が必要なDLLとか、プロジェクトでbin配下に
ファイルを入れてるなら、それがそこに入る。

ただそれだけ。

360 :350:2006/11/20(月) 13:57:00
またひとつ疑問が。
今度は色の指定なんですが、こっちは配列変数には出来ないのでしょうか?


c(0)=”red”
c(1)="blue"
c(2)="green"

for i = 0 to 2
Button1.BackColor = System.Drawing.Color.c(i)
時間待ち
next

などとするとエラーになってしまいます。
算数で正解するとボタンがイルミネーションのようにくるくる色が変わるようにしたいのですが。
しかしVBってBASICって名ですが昔のとはかなり違いますね。

361 :デフォルトの名無しさん:2006/11/20(月) 14:06:47
>>360

c(2) が、どう型を宣言しているかによる。

ボタンで勉強した応用だよ

Private c(2) As System.Drawing.Color

と今度は色の型宣言をして、この変数にいれるのもちゃんと
色の型を持つもの。

c(0) = System.Drawing.Color.AliceBlue

みたいに。


362 :350:2006/11/20(月) 15:02:50
>>361
そんな型宣言も出来るんですか。
変数にボタンやらを代入してそれを操作出来る、それがオブジェクト指向っていう理解でいいのかな???
厨房の頃趣味でBASICとアセンブラをちょこっとやっただけなんで、すっかり様変わりした環境にとまどうばかりです。
ありがとうございました。がんばってみます。

363 :デフォルトの名無しさん:2006/11/20(月) 16:07:00
>>362
そうだね〜

原点をオブジェクトとして、全てをオブジェクトから派生させたのが
オブジェクト指向なのかなぁ

フレームワークをみると、全てはオブジェクトから派生しているから
その考え方はとってもスマートで、いい感じ。

364 :337:2006/11/20(月) 20:44:09
bin の中身の件 いろいろありがとうございます。
もう一つ質問させてださい。
全部で10個くらいのEXEで運用してるアプリケーションです。
クライアントフォルダはC:\D-AP で固定としまして
このフォルダの中にEXEを10個入れてます。
で、各EXEでコンパイルしたbinの中身をあわせた物を入れています。
ただ、新しくコントロールを追加した際DLLが足りない等の警告を極力
少なくしたいため、購入した.net ツールは前もって入れておきたい
(NetAdvantege とかInputMan ) で、インストールされている関係する
DLLやJaフォルダの中身を前もって全部入れて置くってのはありですか?
いつもありがとうございます。
よろしくお願いします。







365 :デフォルトの名無しさん:2006/11/21(火) 09:03:42
>>364
ソリューションで、その今のところは使う予定はない.NETツールも
参照設定を入れておいて、インストーラで一緒に
配布してもいいんじゃないかな。

366 :337:2006/11/21(火) 11:28:51
> 365
ありがとうございます。
そういえばそのパターン前にVB6.0の時それやったことありました。
今回もその手で行こうとおもいます。

ただ、プロジェクトに6.0からアップグレードしたのが結構あるので
依存関係やらなにやらいろいろありすぎて6.0のランタイムも
走らせてます。なかなかきれいなものができなくて
現在も格闘中です。
最近気がついたのですが .net のプロジェクトに参照設定がフルパスで
書いてあったのでそれを参考に.netツールは余分にいれたりしています。
いろいろとありがとうございました。



367 :デフォルトの名無しさん:2006/11/21(火) 22:43:29
クラスとかオブジェクトとかインスタンスとかよくわからないので基礎からじっくり理解していきたいと思うのですが、
何かお勧めの本はありませんか?

368 :デフォルトの名無しさん:2006/11/21(火) 22:50:24
じっくりやってる暇なんてないお

369 :デフォルトの名無しさん:2006/11/22(水) 11:38:00
フォーム1で相対パスのアドレスが入ったstring形式の「pass」
というデータをフォーム2で使うようにしたいんですけど
どのようなプログラムをすればいいのでしょうか?

プログラムの仕様はフォーム1にあるボタンを押すとフォーム2に遷移。
その後フォーム2でフォーム1で取得した「pass」の中にあるtxtデータを元にプログラムを作っていく予定です。

ぐぐっても検索ワードが悪いのか上手く引っかかりませんでした。
ヒントだけでもいいのでよろしくお願いします。

370 :デフォルトの名無しさん:2006/11/22(水) 11:41:32
>>369
passの内容をレジストリに登録
form2でレジストリを読む


371 :デフォルトの名無しさん:2006/11/22(水) 12:01:12
いやいや、form1がメールで送ってform2で受け取ればいいだろ


372 :デフォルトの名無しさん:2006/11/22(水) 12:10:19
>>371
ばかだなぁ

form1でソケットを生成して、form2で受信すればいいだろw

373 :デフォルトの名無しさん:2006/11/22(水) 12:50:19
今風にするならWebサービスかな

374 :369:2006/11/22(水) 13:34:05
>>370
即レス感謝です。
おかげさまで実装したい通りのものを作ることが出来ました。
他の方々もレス感謝です。

375 :デフォルトの名無しさん:2006/11/22(水) 13:38:30
http://www.vector.co.jp/soft/win95/util/se072729.html
作者の方へ

VisualBasicの学習者たちのためにソース公開してください

376 :デフォルトの名無しさん:2006/11/22(水) 14:01:06
>>374
ほかの人をやきもきさせないように、
ネタかマジかかいとくんだ。


377 :デフォルトの名無しさん:2006/11/22(水) 14:02:02
>>369
最大の問題は「pass」だな。

378 :デフォルトの名無しさん:2006/11/22(水) 14:03:45
pathがpasswordになるのかもしれないじょのいこ

379 :デフォルトの名無しさん:2006/11/22(水) 14:34:26
>>374
しかも、なんでよりによってレジを選ぶんだw

万が一、削除処理なんていれてたら・・・ヽ(ill゚д゚)ノ

380 :デフォルトの名無しさん:2006/11/22(水) 14:38:59
shared って staticのこと?

381 :369:2006/11/22(水) 15:17:17
>>376
ネタじゃなくてマジです。

>>377-378
すみません。プログラム内ではpathを使っていたのですが
こちらではpassで質問していました。お恥ずかしい。
パスワードはとは一切関係ないです。

>>379
他に方法があるのですか?
もしよろしければ参考にしたいので教えていただけると嬉しい。
ちなみに削除処理は入れてません。入れるとまずいのですか?
無学で申し訳ないです。作りながら学んでいるのですが難しいですね…。

382 :デフォルトの名無しさん:2006/11/22(水) 15:29:09
>>380
まぁ、にたようなもの。

スコープが違って、sharedはクラス間でも共有されちゃうよよよよん。

383 :デフォルトの名無しさん:2006/11/22(水) 15:33:31
>>382
マジで?
じゃあstaticの代わりになるものってなんですか?

384 :デフォルトの名無しさん:2006/11/22(水) 15:41:02
>>381

dim f as new form2
f.pass = pass
f.show

385 :デフォルトの名無しさん:2006/11/22(水) 16:12:05
>>383
staticは無くなってないよ(´・∀・` )

>>384
それは、form2がpassというメンバ変数かプロパティを
もっていないと使えない。。。。

386 :デフォルトの名無しさん:2006/11/22(水) 16:29:03
だからそう書けって>>384は言いたいんだろうが

387 :デフォルトの名無しさん:2006/11/22(水) 16:32:47
C#のstaticに該当するのはsharedでいいんですか?

388 :デフォルトの名無しさん:2006/11/22(水) 16:34:47
>>387
C#のstaticはいくつか意味があるから、どれのよ

389 :デフォルトの名無しさん:2006/11/22(水) 16:37:31
>>387
最初からそう書けよ。

C丼でソース書いて、
ttp://authors.aspalliance.com/aldotnet/examples/translate.aspx
で変換すると、大体何が何に変わってるか、わかるよ。

390 :デフォルトの名無しさん:2006/11/22(水) 16:41:51
C#のstaticはいろんな意味があるんですか?
これは驚いた。
VBでは意味が違うとワードも変わるということですか?
すげー

391 :デフォルトの名無しさん:2006/11/22(水) 18:20:16
そういやC#のstatic classはどう書くのだろう。
NotInheritedで継承を禁止して、あとインスタンス化を抑制するのが見当たらない。
プライベートのコンストラクタでも書くのかいな。Moduleでもいいけどなんかいやだ。

392 :デフォルトの名無しさん:2006/11/22(水) 18:38:04
>>391
>>389 でやってみたらShared Class と書けるんだ。ありがとん。

393 :デフォルトの名無しさん:2006/11/22(水) 18:46:57
>>392
VBに(今のところ)Shared Classはないよ。
>>389の変換結果は常に正しいわけじゃない。

394 :デフォルトの名無しさん:2006/11/22(水) 18:55:45
Reflectorだと以下のようになった

static class Class1
{
public static int sum(int a, int b)
{
return a + b;
}
}



Friend MustInherit NotInheritable Class Class1
Public Shared Function sum(ByVal a As Integer, ByVal b As Integer) As Integer
Return (a + b)
End Function
End Class

395 :デフォルトの名無しさん:2006/11/22(水) 19:09:27
まんどくさいから、シングルトンに汁。

396 :デフォルトの名無しさん:2006/11/22(水) 19:29:23
>>395
それがいいね

397 :デフォルトの名無しさん:2006/11/22(水) 22:10:35
まあ、動けばなんだもいいさ

398 :デフォルトの名無しさん:2006/11/23(木) 13:30:35
>>394
MSILレベルでは抽象クラス宣言と継承禁止宣言の2つを行うことで静的クラスを実現しているからね。
でもこれをVB.NETでやろうとしてもコンパイル通らない。

>>391
継承禁止にして、コンストラクタの隠蔽によるインスタンス化禁止でほぼ同等のことが実現できる。
>Moduleでもいいけどなんかいやだ。
Moduleと静的クラスは全く別物だからダメだよ。
ModuleにはStandardModule属性が付いているからね。これだけでもう全く別物。

399 :デフォルトの名無しさん:2006/11/23(木) 20:06:35
VBAのスレが立っていないのでここで質問させてください
組込み定数でタブはvbTab改行はvbCRとかあるのですが
スペースとカンマと括弧()の組込み定数を教えてください
もし無ければJISコードでも結構ですのでお願いします。

400 :デフォルトの名無しさん:2006/11/23(木) 20:42:41
なぜスレがたつまで待てないのか
なぜヘルプを見ないのか
なぜAsc()で調べないのか

401 :デフォルトの名無しさん:2006/11/23(木) 20:50:36
怠惰で傲慢で愚昧だから

402 :デフォルトの名無しさん:2006/11/23(木) 22:16:45
>>398
>Moduleと静的クラスは全く別物だからダメだよ。
>ModuleにはStandardModule属性が付いているからね。これだけでもう全く別物。
何が困るわけ?
ああ、クラス名での修飾がいらんとかそういう話?


403 :デフォルトの名無しさん:2006/11/24(金) 01:53:11
>>402
そういう話。

404 :デフォルトの名無しさん:2006/11/24(金) 22:23:28
テキストファイルにある数字を一つずつ2次元配列で格納したいんですが
上手くいきません(ノД`)誰かご教授お願いします。とりあえず恥さらしソースのせてみます

Dim sr As New System.IO.StreamReader("ファイルパス", System.Text.Encoding.Default)
Dim buf As String

Dim retu As Integer = 0
buf = sr.ReadLine
retu = Len(buf)

Dim gyo As Integer = 0
Do Until sr.Peek = -1
gyo += 1
buf = sr.ReadLine
Loop

Dim array(retu, gyo) As Integer 
Dim i , j As Integer

Do Until sr.Peek
For i = 0 To gyo
For j = 0 To retu
array(i, j) = sr.read
Next
Next
Loop
sr.Close()

効率的な方法もあるんでしょうがとりあえず行と列を求めて(テキストファイルの列数と行数は同じの前提)
ためしにテキストボックスでretuとgyoを表示させたところ
ちゃんとした数字が入ってるんで一応そこまでは合っているようなんですが配列が全くできません(ノД`)誰かよろしくお願いします

405 :デフォルトの名無しさん:2006/11/24(金) 22:27:02
>>404
うへへははははwww

い、いんてじゃぁwww

406 :デフォルトの名無しさん:2006/11/24(金) 22:28:48
もしかしてIntegerが違うんですか?
ご存知でしたら教えてください
お願いします(ノД`)

407 :デフォルトの名無しさん:2006/11/24(金) 22:40:09
>>406
うへへははwww
もう、酔っぱらってよく分かんねww

でも、デバッグでbufを見たらちゃんと出てただろw
arrayはなんでいんでじゃぁなんだよw

うへwうへへへへww

408 :デフォルトの名無しさん:2006/11/24(金) 22:54:33
レスありがとう
でも Dim array(retu, gyo) As Stringでも上手くいかない(ノД`)

409 :デフォルトの名無しさん:2006/11/24(金) 22:59:54
integer、string以外で試して見れば?

410 :デフォルトの名無しさん:2006/11/24(金) 23:15:18
>409
ぶはははっはwww

あほだw

あほがいるwwww


peekに達したんだからよめね〜だろwww


あほだwwwwwwwwうわははははははwwww

411 :デフォルトの名無しさん:2006/11/24(金) 23:16:07
いやそれ以前におかすぃだろ

412 :最凶VB厨房:2006/11/24(金) 23:32:26
Dim sr As New System.IO.StreamReader("c:\data.txt", System.Text.Encoding.Default)
Dim buf As String
Dim retu As Integer
buf = sr.ReadLine 'よーしおにいさん1行よんじゃうぞー。
retu = Len(buf) '列の長さはどの行も一緒。と仮定しちゃうぞー。
Dim gyo As Integer = 1 '既に1行読んでるからなー
Do Until sr.Peek = -1
gyo += 1
sr.ReadLine()
Loop
sr.Close()
sr = New System.IO.StreamReader("c:\data.txt", System.Text.Encoding.Default)
'いったん閉じて開きなおす。よーしまた最初から読み直しだぞー。
Dim array(gyo, retu) As Char 'おにいさんは文字と数値の区別をつけるぞー。行と列逆やんか。
Dim i, j As Integer

Do Until sr.Peek = -1
For i = 1 To gyo 'よーしおにいさん0オリジンなんか嫌いだぞー
buf = sr.ReadLine '↑早くも撤回。
For j = 1 To retu
array(i, j) = buf(j - 1) 'bufは0個目から
Console.WriteLine(array(i, j)) '出力ウィンドウで確認だぞー。
Next
Next
Loop
sr.Close()

413 :最凶VB厨房:2006/11/24(金) 23:37:53
3686
4556
6784
1883
1868
1118
1587

c:\data.txt

VB.NET久しぶりすぎる。
ってかVB.NETだよな?

414 :デフォルトの名無しさん:2006/11/24(金) 23:42:40
VB.NET使ってます
最凶VB厨房先生、超親切な解答ありがとう
説明文も丁寧で嬉しいです
本当にありがとう(ノ∀`)

415 :407:2006/11/24(金) 23:45:00
>>414
なぁんだよぉ


俺には感謝の言葉はないのかよぉ?うん?


416 :デフォルトの名無しさん:2006/11/24(金) 23:46:05
酔っ払いの兄ちゃんもありがとう(ノ∀`)
みんな優しくて嬉しいです
本当ありがとう

417 :デフォルトの名無しさん:2006/11/25(土) 01:47:17
VBにジャグ配列ってないの?


418 :デフォルトの名無しさん:2006/11/25(土) 01:54:44
あるよ
http://msdn2.microsoft.com/ja-jp/library/hkhhsz9t(VS.80).aspx


419 :デフォルトの名無しさん:2006/11/25(土) 16:34:29
VBAでEXCELのワークシートからCのenum構造体に変換するマクロ作らされたんだが
あっさりと出来てしまった
VBもこんな感じなの?
VC8でヒーヒーいわされただけに物凄く簡単に思えてしまう漏れは勘違いなのでしょうか?


420 :デフォルトの名無しさん:2006/11/26(日) 00:05:23
>>404
VS2005/.NetFramework2.0以降を使用してたらジェネリックメソッドを使用して

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim sr As New System.IO.StreamReader("c:\data.txt")
Dim intArray() As Integer = Array.ConvertAll(sr.ReadToEnd().Split(vbLf), New Converter(Of String, Integer)(AddressOf StringToInteger))
sr.Close()
End Sub

Private Function StringToInteger(ByVal value As String) As Integer
Return Integer.Parse(value)
End Function

というかんじでもできる
(vbLfのところは、テキストファイルの文字コードによってvbCrLfに変更汁)

421 :デフォルトの名無しさん:2006/11/26(日) 01:46:30
>>404
ごめ、2次元配列だったな

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim sr As New System.IO.StreamReader("c:\data.txt")
Dim buf() As String = sr.ReadToEnd().Split(vbCrLf.ToCharArray())
Dim gyo As Integer = buf.Length - 1
Dim retu As Integer = buf(0).Length - 1
Dim arrbuf() As Integer = Array.ConvertAll(Join(buf, "").ToCharArray(), New Converter(Of Char, Integer)(AddressOf CharToInteger))
Dim arr(gyo, retu) As Integer
Dim p As IntPtr = Marshal.UnsafeAddrOfPinnedArrayElement(arr, 0)
Marshal.Copy(arrbuf, 0, p, arrbuf.Length)
sr.Close()
End Sub

Private Function CharToInteger(ByVal value As Char) As Integer
Return Integer.Parse(value)
End Function

422 :デフォルトの名無しさん:2006/11/26(日) 02:37:41
簡単なことを難しくやる典型的な例ですね

423 :デフォルトの名無しさん:2006/11/26(日) 02:47:06
PinnedArray とか言いつつどこにも Pin している形跡がない件について

424 :デフォルトの名無しさん:2006/11/26(日) 12:24:22
>>421
うははwどこのサイトで調べたかわからないけど、
お前のスキルじゃ、使いこなす事はできないよw

425 :デフォルトの名無しさん:2006/11/26(日) 13:38:13
>>423
ヘルプみるとメソッドが、GCHandleに対してpinを発行してるんだってさ

426 :デフォルトの名無しさん:2006/11/26(日) 13:47:41
そりゃ誤読だ

427 :デフォルトの名無しさん:2006/11/26(日) 14:17:30
>>426
ありゃ誤爆ちゃたのか俺
まあ、読解力低いからな

428 :デフォルトの名無しさん:2006/11/26(日) 17:01:42
プロセスのアイコンを取得することは出来ませんか。(taskmgr.exeのアプリケーションタブにあるように)
やはりAPIが必要なんですかね、、、

429 :デフォルトの名無しさん:2006/11/27(月) 19:11:28
C#でのstatic classがShared Classって書けないのはモジュールがあるから?

430 :デフォルトの名無しさん:2006/11/27(月) 21:08:16
C#で作ったstatic classをReflectorでVB.NETとして開いたら、

 Friend MustInherit NotInheritable Class

ってなったよ。意味は分からないけど。

431 :デフォルトの名無しさん:2006/11/27(月) 21:33:07
絶対に継承しろよ
ただし継承はできないぞ


432 :デフォルトの名無しさん:2006/11/27(月) 22:17:45
>>430
コンパイル通らないんじゃね?

433 :デフォルトの名無しさん:2006/11/27(月) 22:20:32
VB では未サポートだってば。>静的クラス

434 :デフォルトの名無しさん:2006/11/27(月) 22:38:27
モジュール>>>>越えられない壁>>>>静的クラス

435 :デフォルトの名無しさん:2006/11/27(月) 22:48:23
頼むから、モジュールは死んでほしい。

VB厨と仕事をする度に思う。


死んでほしい。

436 :デフォルトの名無しさん:2006/11/28(火) 16:08:11
ブラウザのリンク上で特定のキーを押したら
タイトルとアドレスをコピーというものを実装させたいのですが、
ヘルプを見る際どういったキーワードで検索を
すればいいのか教えてください。

437 :デフォルトの名無しさん:2006/11/28(火) 16:15:43
>>436
javaスクリプト

438 :デフォルトの名無しさん:2006/11/28(火) 16:21:31
>>436
BHO

439 :トリビア:2006/11/28(火) 23:30:51
VB2005で、ゼロで除算するとエラーじゃなくて∞が返る

440 :デフォルトの名無しさん:2006/11/28(火) 23:31:27
>>439
デバッグとexeで報告よろ。

441 :デフォルトの名無しさん:2006/11/29(水) 00:17:37
明日からVB.NETの研修が1ヶ月間はじまります。
テキストでの座学(独学)3日間→インベーダーゲーム作成
→オリジナルゲーム作成(題材は自由)
です。

VB.NETという言語がいまいちわからないのですが、
ゲーム作成などに優れた言語なのでしょうか?

オリジナルゲーム作成ではテトリスかリバーシを考えております。
グラフィカルな部分でも相当頑張らないといけないみたいで、
今から気が重いです。

442 :デフォルトの名無しさん:2006/11/29(水) 00:33:39
御愁傷様

443 :デフォルトの名無しさん:2006/11/29(水) 01:13:58
>>441
何やってる会社?
VB使うゲーム会社はないだろうし・・・

444 :デフォルトの名無しさん:2006/11/29(水) 01:37:11
>>443
基幹システム設計・開発
ウェブサイト構築・デザイン
携帯電話アプリケーション開発

などなど。正直良くわかっていません。
ゲーム会社ではないのですが、
VB.NETは主にどんな分野で使用されている言語なのでしょうか?

445 :デフォルトの名無しさん:2006/11/29(水) 05:00:43
>>444
>VB.NETは主にどんな分野で使用されている言語なのでしょうか?

答えは自分で書いてるジャン

446 :デフォルトの名無しさん:2006/11/29(水) 05:19:23
っていうか言語の研修なんだろ?
構文や制御くらいしか説明する時間がないから
テーマは簡単なゲームになることが多い。
VB.NETに限らず、なんにも知らんヤツに2〜3日で
データアクセスまで説明できんだろ。

よってVBがゲームに向くとかどうとか関係なし。


447 :デフォルトの名無しさん:2006/11/29(水) 07:18:32
ゲームのほうがロジカルだからいいんじゃね?

448 :デフォルトの名無しさん:2006/11/29(水) 07:28:16
んなこたーない。

449 :デフォルトの名無しさん:2006/11/29(水) 08:48:06
ゲームづくりっつー課題は、道具の使い方を覚えるには適切な教材だよ。

450 :デフォルトの名無しさん:2006/11/29(水) 12:36:49
オセロとテトリス、
初心者が作るとしたらどちらが難しいと思いますか?


451 :デフォルトの名無しさん:2006/11/29(水) 12:48:31
オセロ <<< テトリス

オセロは、ユーザーからのアクションをただ待てば
いいだけだから、簡単そう。

452 :デフォルトの名無しさん:2006/11/29(水) 13:25:44
ComboBoxにReadOnlyプロパティがあればなぁって誰もが1度は考えるよね!?

テンプレにあったサイトの中にこれがあったんだけど
ttp://jeanne.wankuma.com/library/readonlycombobox/source.html
まだ不完全ぽい。
ReadOnlyプロパティ変更すると右側の矢印ボタンが消えちゃう。

プロパティは一切変えずにUpdateStyles()だけしても消える。
どういうことなんだろう?
だれかわかる人いませんか?

453 :デフォルトの名無しさん:2006/11/29(水) 13:37:56
.DropDownStyle = ComboBoxStyle.DropDownList;

じゃ駄目なのか?

454 :452:2006/11/29(水) 13:50:21
いや、選択されたリストの変更もさせたくないのよ

455 :デフォルトの名無しさん:2006/11/29(水) 13:53:19
コントロール派生させて作ればいいじゃん。
DataBindingとか上手く使えば別に50ステップも無く作れる。


456 :452:2006/11/29(水) 14:22:40
うーん、DataBindingをどう使えばConboBoxを変更不可にできるのか、
いまいちピンときません。
もうちょっとヒントお願い。

457 :デフォルトの名無しさん:2006/11/29(水) 17:38:41
コンボから離れろ。
普通のラベルで内部にHashMapなり、値・表示値を保持。
初期化でコンボと同じようにそれを与えて、設定されたValueに対してText表示を変える。


458 :デフォルトの名無しさん:2006/11/29(水) 20:34:53
>>452
いまだにこういう人っているんだね。
WinのGUIの思想が全然わかってない人。

いや、コントロールなんて所詮道具なんだから別に思想に反したって
結局使いやすけりゃそれでOKなんだが、どう考えてもそんなコンボボックスは
ユーザーにストレス与えると思うわ。ス元みたいなGUI使いたくないわ

459 :デフォルトの名無しさん:2006/11/29(水) 21:00:17
いやホント、それってどうしてラベルじゃいけないのか分からん
入力させない、選択させないって時にコンボ使う理由は?

460 :デフォルトの名無しさん:2006/11/29(水) 22:12:31
>>459
保護したときにグレーダウンして字が薄くなるのがだめなんでしょ?

461 :デフォルトの名無しさん:2006/11/29(水) 22:22:36
だからそれが発想が逆立ちしてるんだよ。

ユーザー目線で物考えられないのかな。
見た目普通なのに入力も選択もできないコンボボックスなんて
イライラ製造機以外のなんでもねえだろう

462 :デフォルトの名無しさん:2006/11/29(水) 22:27:56
VB.NETでウィザードページみたいなのを作っているのですが
沢山のテキストボックスの内容をチェックして、NextボタンをTrueにしたり
間違いがあるならその項目の文字列を赤にするなどのフォーマットチェック
の凄いバージョンをしたいのですが、どのようにするとスマートなのでしょうか

今はCheck()と言うサブルーチンを作って、それですべてのテキストボックスの
内容を調べて、ボタンをEnableにしたりFalseにしたり、文字を赤にする等を行
なうようにして、すべてのテキストボックスのイベントでCheckが発生するよう
にしています。


463 :デフォルトの名無しさん:2006/11/29(水) 22:40:46
>>461
ほっとけばいいんでない?

>>452
コンボボックスを継承したクラスをつくって、イベント内で
処理をキャンセルするようなプロパティをついくればおk
プロパティ名はIsReadOnlyでおk。


>>462
コントロールチェック用のクラスを作る。


コントロールをオブジェクト配列にでも格納。

チェックを行いたいタイミングで、そのクラス内でチェックを
行えばいいんでない?

464 :デフォルトの名無しさん:2006/11/29(水) 22:58:02
>>461
見難いから見やすくしろというユーザーも少なからずいるんだけどな

465 :最凶VB厨房:2006/11/29(水) 22:59:36
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
AddHandler Application.Idle, AddressOf Check 'Check開始してみるてすつ
End Sub
Private Sub Check(ByVal sender As System.Object, ByVal e As System.EventArgs)
'ずらずらと
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
RemoveHandler Application.Idle, AddressOf Check 'Check終了してみるてすつ
End Sub

466 :デフォルトの名無しさん:2006/11/29(水) 23:09:19
>>465
お前、意外とバカというか、マヌケだな。

467 :最凶VB厨房:2006/11/29(水) 23:16:30
模範解答どうぞ。

468 :デフォルトの名無しさん:2006/11/29(水) 23:54:57
最凶VB厨房が怒ったw


今回の要件は
>すべてのテキストボックスの内容を調べて

>すべてのテキストボックスのイベントでCheckが発生する

の二点かな。
チェック関数をそのままつかったら、意味ないじゃん。
cpuのアイドリングをまって、描画がちょっと良くなるくらいじゃない?

ドトネトになって、イベントの集約が可能になったのは知ってる?
Handles と続けて。

で、チェック用にオブジェクトを格納するクラスを作って、
やりたいチェックを行うメソッドを作れば、いいじゃん。

おれなら、ControlCheckクラスとかなんとかいって作る。
他でも使い回しができるし。

酔いちくれが言える事はこのくらいかな。

469 :461:2006/11/30(木) 00:11:02
>>452
まあ文句言うだけだとアレなんで一応方法考えてみたよ。
試したところこれで一応可能なようだけど。
Win32のメッセージに明るくないんでどこかおかしいかもしれないが。
ReadOnlyってプロパティが既に実装されていることを前提としている。

Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
Const WM_LBUTTONDOWN As Integer = &H201
Const WM_LBUTTONDBLCLK As Integer = &H203

If Me.ReadOnly = True Then
Select Case m.Msg
Case WM_LBUTTONDBLCLK, WM_LBUTTONDOWN
'MyBase.WndProc(m)
Case Else
MyBase.WndProc(m)
End Select
Else
MyBase.WndProc(m)
End If
End Sub

470 :461:2006/11/30(木) 00:11:33
Protected Overrides Sub OnKeyPress(ByVal e As System.Windows.Forms.KeyPressEventArgs)
If Me.ReadOnly = True Then
e.Handled = True
End If
MyBase.OnKeyPress(e)
End Sub

Protected Overrides Sub OnKeyDown(ByVal e As System.Windows.Forms.KeyEventArgs)
If Me.ReadOnly = True Then
If e.KeyData = Keys.Delete Then
e.Handled = True
End If
End If
MyBase.OnKeyDown(e)
End Sub

471 :最凶VB厨房:2006/11/30(木) 00:14:36
>>462の前半は要件(やりたいこと)。後半は現状じゃないのか?
いまいち言ってることがわからん。

472 :461:2006/11/30(木) 00:14:37
ああ↑↓キーも禁止しないと不完全だね

473 :デフォルトの名無しさん:2006/11/30(木) 00:31:56
VBってC,JAVAでいうところの演算子「%」ってないんですか?
文字では有効ではありませんと怒られたんですけど

474 :デフォルトの名無しさん:2006/11/30(木) 00:33:53
>>471
違う違う。
オレら回答者にとっての要件という意味。


なんてったて、スマートにしたいんだろw

sub ちぇっく()
handles てきすとぼくす.leave, ちがうてきすとぼくす.leave

でも、なんでもやってとりあえず一個にまとめたらどう。

475 :デフォルトの名無しさん:2006/11/30(木) 00:36:45
>>473
Mod

もう寝る。

476 :デフォルトの名無しさん:2006/11/30(木) 01:08:19
>>475
おk把握した
ありがとう

477 :デフォルトの名無しさん:2006/11/30(木) 14:18:10
グローバル変数みたいなのはどうやれば使えますか?
あとでオブジェクト指向にのっとった作法どおりのコーディングに
直しますので、とりあえず勉強しなくても使えるやりかたを教えてください。


478 :デフォルトの名無しさん:2006/11/30(木) 15:36:49
どっかのクラスにSharedでPublicな変数?
使おうとも思わないから良く判らんが。

OOでやるなら、しんぐるとん実装したクラスから取れば同じでしょ。


479 :デフォルトの名無しさん:2006/11/30(木) 15:45:08
>>477
そんな素敵な君に
System.Reflection クラス
を教えよう!

これを極めれば、どんなスコープだろうとも、どこからでも
参照できます!

MethodInfoなんて取得できれば、関数だって実行できちゃいます!

480 :デフォルトの名無しさん:2006/11/30(木) 15:59:15
リフレクションとグローバル変数はちがうべさ。
しったかこくでねー。

リフレクションは単に動的にオブジェクト実体を名前(型)から生成できるだけ。
アドイン機能とか、可変メニューで使うが吉。

481 :デフォルトの名無しさん:2006/11/30(木) 16:21:20
>>480
ネタに(ry


お前空気(ry

482 :デフォルトの名無しさん:2006/11/30(木) 16:27:26
まあ空気以前に間違っとるわな。

483 :デフォルトの名無しさん:2006/11/30(木) 19:18:53
ラベルの配列を作ってフォームに並べる処理を行った後で、
「ラベルの上でクリック」をイベント発生の条件にしたいのですがどのように書けば良いのでしょうか?
ラベルは二次元配列です。クリックされたラベルの添え字をどうやって検出すれば良いのかが判りません・・・

484 :デフォルトの名無しさん:2006/11/30(木) 22:01:18
>>470
Win32 API を使えば、もっと簡単に出来るぞ

ComboBox1.Enabled = False
ComboBox1.DropDownStyle = ComboBoxStyle.DropDown
EnableWindow(GetWindow(ComboBox1.Handle, 5), 1)

485 :デフォルトの名無しさん:2006/11/30(木) 22:10:35
>>483
AddHandler

486 :452:2006/11/30(木) 22:17:51
急な用事で1日ぶりにやってきたら、なんかえらい不評かってる・・・。
絶対みんな欲しがってると思ってたのに。
ラベルとコンボの切り替えなんて、そんなのVB4.0の時からやってたけど、めんどくせーじゃん。
逆に.netでまだそんなことしてるのかよと笑われるかと思ったら、皆さんベタなのがお好きなようで。
今回やろうとしてることとラベルの違いなんて、右端に矢印ボタンがあるかどうかの違いだけだし、
矢印ボタン1つでそこまでGUIの思想とやらが狂うものかね。
ちなみに見た目普通じゃないぞ。バックカラーも変えてるぞ。

ともあれ、>>469、470 のソースいただきました。
ソース完璧でございました。
ありがとうございました。
希望通りのものが出来たよ。

>>484も勉強になったけど、APIはあんまり使いたくなかったの。

487 :デフォルトの名無しさん:2006/11/30(木) 22:17:55
>>484
「簡単」とはコードの短さのことじゃないだろうw

それに、その方式だとユーザーがEnabledの動作もオーバライドする必要があり、
しかもそのコードは非直観的なものにならざるをえないんじゃないの?

488 :デフォルトの名無しさん:2006/11/30(木) 22:29:00
>>487
ComboBoxをDisableにして中のEditBoxをEnableにしているだけだから簡単だろ?
戻すときはComboBoxをEnableにするだけで戻ったはず。

で、どこが直感的でないんだ? Win32 Api を知らない人にとってはって意味?

489 :デフォルトの名無しさん:2006/11/30(木) 22:37:47
>>488
ああ今わかったよ。
>>484はある意味非OOP的な考え方をしてるんだね。

ComboBoxを継承して新機能を付加する、って発想じゃないわけだ。
そうじゃなくて、あくまでComboBoxを使うユーザーのコードのなかでComboBoxをいじる、という発想。
話が噛合わないわけだ。

490 :デフォルトの名無しさん:2006/11/30(木) 22:39:42
ついでに言えば、やっぱりそういう発想はスパゲティ的であって「簡単」とは言わんでしょう

491 :最凶VB厨房:2006/11/30(木) 22:44:09
何をおっしゃっているのかマジでわからんw
どこをどうみたらスパゲティ的なのか。

492 :デフォルトの名無しさん:2006/11/30(木) 22:46:49
ふふふ

うへへははw

やっぱり、ブービー厨を酒のつまみにするのは最高w

493 :デフォルトの名無しさん:2006/11/30(木) 22:47:38
>>492
コテハンにしてくれませんか?

494 :酔いちくれ ◆J0rwikii8c :2006/11/30(木) 23:09:04
うん??


なぁんだよ。

495 :デフォルトの名無しさん:2006/11/30(木) 23:31:23
どなたか教えて下さい。
環境はORACLE9iでVS2003です。
DBからテーブルをDaTaSetに落とし、そのDataSetをDataGridViewに表示させると少数が近似値をとってしまうようです。
例…0.02が0.02000000002みたいになります。
DataGridColumnの型をなおすにはどうすればよいでしょうか。

496 :デフォルトの名無しさん:2006/11/30(木) 23:36:04
>>489
お前はいったい何を言ってる?


497 :デフォルトの名無しさん:2006/12/01(金) 00:05:32
>>495
基本的には必要な桁までに丸めればいいんじゃないの?
あるいはDataSetにぶち込むオブジェクトのToStringをオーバーライドして
必要な桁までの文字列になるようにするか。

498 :デフォルトの名無しさん:2006/12/01(金) 00:15:02
>>489
ComboBoxを継承して中の人をオーバーライドすれば簡単にOOPという物になるだろ?
応用が利かないのか。

オレは、スパゲティ好きのWin32 SDKな人だが文句あるか?

499 :デフォルトの名無しさん:2006/12/01(金) 00:26:52
>>489
OOP以前に>>469-470のロジックは強引過ぎやしないか〜

500 :デフォルトの名無しさん:2006/12/01(金) 00:31:33
>>498
文句とかそういうガキ臭いこと言わないの。
まあもし>>487の話読んで何言ってるのかピンとこないなら、
実際にComboBoxをオーバライドしてReadOnlyの機能を実装する際に>>484みたいな
やり方で実装してみればたぶんわかるよ。

その感じだとひょっとしてコーディングしてるうちには能天気にも
問題に気づかないかもしれないけど。

501 :酔いちくれ ◆J0rwikii8c :2006/12/01(金) 09:20:30
コンボボックスをおーばーらいどするという表現で
おれは、ジョッキ一杯は飲めるw

502 :デフォルトの名無しさん:2006/12/01(金) 11:53:53
なにをジョッキ一杯れすか

503 :デフォルトの名無しさん:2006/12/01(金) 14:04:13
ル・ラーダ・フォルオル!

504 :デフォルトの名無しさん:2006/12/01(金) 18:41:39
>>503
マホカンタ

505 :酔いちくれ ◆J0rwikii8c :2006/12/01(金) 21:40:07
>>502

びーる以外のものがジョッキに入ってたら
たまげるぜ。

お前のそのかわいさで、もう一杯はいけるな。

しかし、ドットネットは便利だ。

506 :デフォルトの名無しさん:2006/12/01(金) 22:49:08
System.Diagnostics.Process.GetCurrentProcessのCPU使用率を取得したいのですが、どうしたら良いのでしょうか。
TotalProcessorTimeから取得できそうですが、どうすれば取得できるのか、、、分かりませんorz

507 :デフォルトの名無しさん:2006/12/01(金) 23:00:48
プロパティに無けりゃ無理だろ
NT 系限定で良いなら PerformanceCounter とか使えるかも知れんな

508 :デフォルトの名無しさん:2006/12/01(金) 23:13:18
>>500
>>484みたいなやりかたでComboBoxをオーバライドするとどんな問題が起きるのだ?
VB厨にわかるように教えてくれ!

509 :酔いちくれ ◆J0rwikii8c :2006/12/01(金) 23:16:49
もう、オレのパトスは限界だ!
びゅっ!とでる!

コンボボックスをオーバーライドするんだ!

510 :デフォルトの名無しさん:2006/12/01(金) 23:30:36
wwwww次元が歪んだ世界wwwwwww


511 :デフォルトの名無しさん:2006/12/01(金) 23:36:22
どこの世界も心の働きがズレている、というか幼いのが増えたよな。
何が楽しいんだかねまったくw
俺には理解できんセンスだ。

>>508
継承、な。
まずやってみれば?
話はそれから。

512 :デフォルトの名無しさん:2006/12/01(金) 23:45:27
皮肉も理解できん奴も増えたよな

513 :デフォルトの名無しさん:2006/12/01(金) 23:46:32
ガクガク(((゜Д゜)))ブルブル

514 :デフォルトの名無しさん:2006/12/01(金) 23:49:43
>>508
つ s/ComboBox1/MyBase/

515 :デフォルトの名無しさん:2006/12/01(金) 23:49:51
>>512
それが「皮肉」として成立すると思っちゃうような感性を、人は幼稚と呼ぶんだよw

516 :デフォルトの名無しさん:2006/12/02(土) 00:02:50
(゜∀゜)(∀゜)(゜ )( )( ゜)( ゜∀)(゜∀゜)

517 :デフォルトの名無しさん:2006/12/02(土) 03:15:26
【使用環境】VB.NET2003

string形式の文字列を配列使わないで
ループで一文字ずつ取り出していく方法ってありませんか?

518 :デフォルトの名無しさん:2006/12/02(土) 03:35:58
a(i)


519 :デフォルトの名無しさん:2006/12/02(土) 04:30:31
>>518
それすると配列じゃないってエラー出るんですよね
2005なら全く同じソースで動いたんですけども

520 :デフォルトの名無しさん:2006/12/02(土) 08:31:43
a.Chars(i)

521 :デフォルトの名無しさん:2006/12/02(土) 10:28:01
for i=0 to len(str)-1
part=str.substring(i,1)
next
じゃあかんのか?

522 :デフォルトの名無しさん:2006/12/02(土) 10:36:54
あほか


523 :低脳無能な愚民:2006/12/02(土) 15:27:14
MP3とWAVEとWAVEを3つ同時に流したいのだが、どーすりゃいいんだぁー??泣泣泣

524 :デフォルトの名無しさん:2006/12/02(土) 15:28:10
お前には無理。

525 :デフォルトの名無しさん:2006/12/02(土) 20:40:50
GUI作成中にラベルの境界が見えないのは改悪だろ
常識的に考えて

526 :デフォルトの名無しさん:2006/12/02(土) 21:14:19
.textに識別がつくようになんか入れとけばいいじゃん。


527 :デフォルトの名無しさん:2006/12/02(土) 22:18:03
超初心者ですみません
図形を描写するプログラムはPictureBox1_Paintに書かないといけないんですか?
Form1_Loadだと描写できないんですかね?

528 :デフォルトの名無しさん:2006/12/02(土) 22:24:32
マジレスすると超初心者のまずすべきことはこんなところで人に質問することじゃなく、
入門書をあさることだろう。

まあ、すでにこうやって質問してる時点で見込みがない人だと思うけど

529 :デフォルトの名無しさん:2006/12/02(土) 22:29:56
入門サイトは見てるんですけど調べたいことは載ってないんですよね
ボタンクリックすると表示されるソースはあるのに
フォームロードで作ってみても描画されないしもう諦めて寝ます

530 :デフォルトの名無しさん:2006/12/02(土) 22:35:11
だから初心者のクセにやりたいことだけピンポイントで調べよう、なんて考えが間違ってるんだよ。
そんなの10年早いわw

現にお前さんがそうであるように、初心者の思う「やりたいこと」っていうのは
的外れなことだったりするからな。

531 :デフォルトの名無しさん:2006/12/02(土) 22:46:45
ぶっちゃけ

Loadイベントで描画
→CreateControlされた時等にだけ呼ばれる
→Formが表示されたときに消える

Paintイベントで描画
→画面がInvalidateされるたびに呼ばれる
→ずっと表示されてるように見える


532 :デフォルトの名無しさん:2006/12/02(土) 23:04:41
>>530
一通り書かれている入門書は読むべきだな。
そうでなければ、入門サイトを調べるのとは別に、各コントロールのイベント、メソッド、プロパティを見る事。
>>530 が言ってるように、ピンポイント情報ではなく全般的に知識を持つ事が重要。

533 :532:2006/12/02(土) 23:05:31
最初の >>530>>529 のミス。すまぬ。

534 :デフォルトの名無しさん:2006/12/03(日) 22:35:51
DLLで void xxx(char* str); な関数を実行して、strの内容を取り出すにはどうしたら良いでしょうか、、、
この関数はstrの内容を書き換えるようなのですが、、、
素直にCharを指定しても最初の1文字しか取得できないし、StringBuilderの使い方も分からない、、、orz

535 :デフォルトの名無しさん:2006/12/03(日) 22:46:31
ググレカス
ttp://www.google.co.jp/search?hl=en&inlang=ja&q=StringBuilder+Dll&lr=lang_ja

536 :デフォルトの名無しさん:2006/12/03(日) 23:00:25
Private Declare Ansi Sub xxx Lib "dll.dll" (ByRef s As System.Text.StringBuilder)

Dim aaa As New System.Text.StringBuilder(256)
xxx(aaa)

AccessViolationException、、、ググっても分からないorz

537 :デフォルトの名無しさん:2006/12/03(日) 23:02:15
あーバカだった。ByRefじゃねぇ、ByValだ。お騒がせしました、スレ汚しスマソorz

538 :デフォルトの名無しさん:2006/12/04(月) 01:38:55
文字列の左右の空白を削除する関数で
Trim( )っていうのがあると思うんですが
string型の文字列を入れても空白が削除されないんですが
どんな問題が考えられるでしょう? 何度やってもだめです。
ただinteger型の数字を入れると空白が削除されます。
これは何が起こってるんでしょうか?

539 :デフォルトの名無しさん:2006/12/04(月) 01:45:52
>>538
多分君の頭に問題があるんじゃないかな。

マジレスして欲しかったらその現象が起こるコード書こうね。

540 :538:2006/12/04(月) 01:50:44
>>539
VBAですがいいですかね?
VBAスレ無くなっちゃってるので書き込んだのですが。

541 :デフォルトの名無しさん:2006/12/04(月) 01:51:00
文字列の内容次第だが、
ExcelのTrim関数で同じコトがおこるか確かめてみて、
同じコトがおこるとしたら、
そのときは、 「Excel Trim 文字数」 とかでググってみそ?
(オイラがググってないため回答が得られるかはナゾw)

おそらく、世の中の大概のプログラマが一度は経験したことがアル問題だわw

この手の話、自分で調べて納得して解決するのが一番良いよ。


542 :538:2006/12/04(月) 02:00:25
>>541
おきますね、ワークシート関数でもおきます。
文字数はそんなに多くはないんですけどね。。。
何が原因なんでしょうか?
今ぐぐってますが、ちょっと判らないなぁ。
もうちょい調べてみます。

543 :541:2006/12/04(月) 02:13:26
オイラが、プログラミングを始めた頃は悩んだ問題のことだと思ったので、
初歩的なコトだったら良いんだけど、
的外れだったら申し訳ないから、確認・・

実際、どんな文字列を、
どうやって関数にたたき込んで、
どんな結果になるのかな?

そして、どんな結果が欲しいのかな?

544 :538:2006/12/04(月) 02:21:57
>>543
貼っちゃいますね。
といっても貼った所でどうにもならないコードですが−−;

Sub aaa()
Dim a As String

a = Trim(Cells(1, 1))
Cells(2, 1) = a

End Sub

中に入れた文字列は「ジャスダック」「ヘラクレス」「マザーズ」です。
コピペしてきたんで「 ジャスダック 」こんなふうに隙間が開いちゃってるんですよね。
この隙間を無くしたいんですができないんですよね。。
色々な文字列で試しましたが基本的に全部ダメですね。
でも数字だけはなぜかできるんですよね。。。

545 :デフォルトの名無しさん:2006/12/04(月) 02:25:28
>>544
コピペしてきた文字列ってのは?

546 :538:2006/12/04(月) 02:28:10
普通の文字列ですよ、↓の感じです。

?マザーズ?
?マザーズ?
?ジャスダック?
?東証1部?
?ジャスダック?
?東証2部?

ってなんだこりゃ?
コピペしたら前後に何かついてますね。。。
なんだろこれ?

547 :デフォルトの名無しさん:2006/12/04(月) 07:44:08
VBマガジンてまだあるのか?

548 :デフォルトの名無しさん:2006/12/04(月) 08:04:40
dotNETマガジンに移行した

549 :デフォルトの名無しさん:2006/12/04(月) 09:09:04
WDMに移行した

550 :デフォルトの名無しさん:2006/12/04(月) 09:26:06
休刊ポストに…。


551 :デフォルトの名無しさん:2006/12/04(月) 12:19:28
配列の一つを削除して、中身を繰り上げる処理をする関数みたいな物ありませんか?
絶対あると思うのですが。

イメージとしては
a[0]=5 a[1]=6 a[2]=7 a[3]=8 a[4]=9 a[5]=10
という配列があっとして、2の配列の中身を削除して繰り上げると
a[0]=5 a[1]=6 a[2]=8 a[3]=9 a[4]=10 a[5]=0
こんな感じになるイメージです。

552 :デフォルトの名無しさん:2006/12/04(月) 12:24:29
まあ、ちょっとMSのポチになり過ぎて世の中の需要とずれちゃったのが失敗だったよねw
「日経ソフトをもうちょっと実践的にしてみました」みたいな誌面を目指せばよかったのに。

553 :デフォルトの名無しさん:2006/12/04(月) 12:25:48
>>551
ArrayList
List<T>

554 :デフォルトの名無しさん:2006/12/04(月) 12:30:48
>>551
絶対ないw
ArrayListでも使えば?

つーか、いい加減そういう「関数」とか「中身を繰り上げる」みたいな発想やめたら?
前者はともかく、後者みたいな発想でそういうことに下手に手を出すと
脅しじゃなくて危険だよ。

555 :デフォルトの名無しさん:2006/12/04(月) 12:54:22
>>552
問題は、今後まともなプログラム雑誌がなくなることだな。
日経ソフトウェアは正直ホビーレベルで実務イメージが一切無い。

556 :デフォルトの名無しさん:2006/12/04(月) 13:27:16
RemoveAtとかなかったっけ?

557 :デフォルトの名無しさん:2006/12/04(月) 13:51:44
惚けてた、固定サイズだな…


558 :デフォルトの名無しさん:2006/12/04(月) 15:39:57
>>551
ポインターを使えば一発だ

559 :デフォルトの名無しさん:2006/12/04(月) 16:44:55
一発じゃないだろ

560 :デフォルトの名無しさん:2006/12/04(月) 18:38:18
>>555
まあでも実務というのとは違うにしても、日経ソフトにも質の高い記事は(たまに)あるんだけどね。
安室さんの記事とか。

561 :デフォルトの名無しさん:2006/12/04(月) 21:45:56
simei = miyoji & 全角スペース & namae
全角スペース ってどうやればできるの?


562 :デフォルトの名無しさん:2006/12/04(月) 22:37:19
JPEG形式でクリップボードに書き込む方法ってある

563 :デフォルトの名無しさん:2006/12/05(火) 15:44:05
DirectXSDK入れてもプロジェクトにアイコン出てこないのは仕様?

564 :デフォルトの名無しさん:2006/12/05(火) 15:48:03
>>562
ビットマップとJPEGファイル両方クリップボードにsetすればいいんでは?


565 :デフォルトの名無しさん:2006/12/05(火) 19:15:51
VB2005ではMSChartってインストールされないんでしょうか?

もしそうなら、代わりの機能とかどうにかしてMSChartを使うこととかできませんか?


566 :デフォルトの名無しさん:2006/12/05(火) 20:05:54
>>565
質問する前に自分で少しはあがけよw何もしてないだろ?ググることすら。

COMのコントロールなんだから普通にVB2005でも使えるでしょ
直で使って問題あるならVB6でラップすればいいじゃん。
まあ、そこまでして2005使う意味がよくわからんが

567 :565:2006/12/05(火) 20:27:15
>>566
すいません。かれこれ半日くらいググってるんですが、よくわからなかったもので・・・。

ツールボックスのカスタマイズのCOMコンポーネントタブに表示されるリストに
見当たらなければ使えないんでしょうか?

568 :デフォルトの名無しさん:2006/12/05(火) 20:48:16
無いなら使えるわけなかろう。


569 :デフォルトの名無しさん:2006/12/06(水) 01:06:13
質問に答えないで煽るだけの奴って何でいるんだろうな?

570 :デフォルトの名無しさん:2006/12/06(水) 05:45:59
VB.NETにMSChartはついてこない。
VB6などMSChartを含んでるアプリが別途インストールされているならVB.NETから使える。

>ツールボックスのカスタマイズのCOMコンポーネントタブに表示されるリストに 
>見当たらなければ使えないんでしょうか? 

その通りで、別途インストールされていれば表示される。
別途インストールしていないなら 「無いなら使えるわけなかろう。 」

571 :565:2006/12/06(水) 06:50:15
>>570
わかりました。有難うございます。

VB6インストールしてないので代わりになるものをググってみます。

572 :デフォルトの名無しさん:2006/12/06(水) 08:51:06
画像を反転させるには(回転)どうしたらいいんでしょうか?

ゲームで主人公が武器を回転しながら投げるという感じです。
投げるまではいけたんですが。

573 :デフォルトの名無しさん:2006/12/06(水) 09:42:17
みんな使ってね
ぼくの人柱になりなよ
音楽、映像、WEBデザイン等幅広く活動していきたいと思います。

hg300364-6124@tbg.t-com.ne.jp
BIZNOT ART WORKSでは随時募集しています。悪用だろうが非商用だろうが一切代金は頂きません。
。下記メールアドレスまでいろいろメッセージ頂戴ね。

hg300364-6124@tbg.t-com.ne.jp
文句あ???
あはハハはああh
最高のデザインと音楽だよ

574 :デフォルトの名無しさん:2006/12/06(水) 09:54:34
>>572
DirectXを極める

575 :デフォルトの名無しさん:2006/12/06(水) 11:11:38
>>569
それはおまいの事w。

576 :デフォルトの名無しさん:2006/12/06(水) 13:59:13
>>564
EncoderしてJFIFでクリップボードに入れたんだけど
どうしてもオフィスで貼り付けできないっす・・・・
根本から間違ってるのか俺orz

577 :デフォルトの名無しさん:2006/12/06(水) 22:28:16
流れ乱しますが、
vb.net の課題と その課題の作成例?
が 置いてあるサイトがあれば教えていただけませんか?


578 :酔いちくれ ◆J0rwikii8c :2006/12/07(木) 09:07:57
>>577

なんのためにテンプレ作ってもらってるんだよ
はぁ。毎朝二日酔いと下痢。

>>1-5

579 :デフォルトの名無しさん:2006/12/07(木) 10:36:43
こんなやつに拾ってきた課題だされるやつもかわいそうだな。w
課題設定できない、せめて自分でみつけられないやつに、教えるなんてできるんか?


580 :デフォルトの名無しさん:2006/12/07(木) 11:23:16
VB.NET初心者です。
皆様のお知恵をお貸しください。

アプリAで行ったデータ更新を
アプリBに通知し、アプリBで表示中のグリッドのデータにアプリAで
行った更新が反映される(データ再読込み)というものです。

以上の事を非同期プロセス間通信で行えばいいといわれ、
PostMessageについて色々と調べたのですが、いまいち使い方がわかりません。
ユーザ定義のメッセージを PostMessageする方法について
ご教授お願いします。

581 :デフォルトの名無しさん:2006/12/07(木) 11:37:10
WM_USER
WM_COPYDATA



582 :デフォルトの名無しさん:2006/12/07(木) 11:56:28
そしてCOPY〜はポスト出来ないって話

583 :デフォルトの名無しさん:2006/12/07(木) 11:58:36
つい最近@何とかで見たネタだな

584 :デフォルトの名無しさん:2006/12/09(土) 21:32:37
(,,゚Д゚)∩先生方、質問です。
VS2003+SQL SERVER 2000です
LAN上なら普通にDB接続できるのですが、web上ではDBに接続できません。
ASP.NETだとDB接続は問題なくできているのでソースに問題があると思いますがイマイチ判りません。
SqlConnectionをopenする時にシステムエラーが出るので
"Server=hoge.co.jp;Database=DB;Integrated Security=SSPI;"
と書いていますが、hoge.co.jpの部分が全く違うのでしょうか?


585 :酔いちくれ ◆J0rwikii8c :2006/12/09(土) 21:43:06
あぁ〜酔った。

>>584
おまいのSQLさーばーは、認証はどうしてるの?

586 :デフォルトの名無しさん:2006/12/09(土) 21:54:32
web上でDBに接続てどういう意味?


587 :デフォルトの名無しさん:2006/12/09(土) 21:55:13
(,,゚Д゚)∩WINDOWS認証であります

588 :デフォルトの名無しさん:2006/12/09(土) 21:55:27
LAN上ならできてWeb上ではできなくて
ASP.NETだとできる。

あー、つまり、どういうこった?


589 :デフォルトの名無しさん:2006/12/09(土) 22:00:52
文盲スマソ
元々はIEを使ってデータ接続をしていたのです。(ASP.NET)
SERVERは会社にあり、自宅からIEだとDBに接続は問題なく出来ているのです。
今日フト思いVB.NETでアプリケーションとしても作って見たところ会社(LAN上)では
問題なくDBに接続できましたが、自宅にソースを持って帰り今やってみたところ繋がらない始末です


590 :デフォルトの名無しさん:2006/12/09(土) 22:04:06
そんな恐ろしいことができるようになってんのかよ
なってないからできないんだろうがな。


591 :デフォルトの名無しさん:2006/12/09(土) 22:22:42
ファイアーウォール、ポート開放、名前解決、ユーザ登録などの問題点が考えられる。

実はWindows認証ではなくSQLServer認証だったり。

592 :デフォルトの名無しさん:2006/12/09(土) 22:40:10
そもそもインターネットからDBサーバが見えるようになってるとは思えん。


593 :酔いちくれ ◆J0rwikii8c :2006/12/09(土) 22:40:46
クライアントからSERVERを共有したけりゃ

「セッション」

があればいいよ


頭良さそうだし、ぐぐってみたら。


594 :酔いちくれ ◆J0rwikii8c :2006/12/09(土) 22:50:25
う、うへへあはははwwww

もう、たまらんwww

いんたーねっつから、DBがみえないんだってよwww
うははははははwwwww

595 :デフォルトの名無しさん:2006/12/09(土) 23:01:20
いろいろ意見ありがとう御座います。
ひょっとして今自分がやろうとしている事ってかなり特殊なのかなと感じつつあります

例えばヤフオクに自社の商品(DBに格納してあるデータ)出品する場合IEを使って出品するけど大量に出品する時はとてもメンドクサイし管理が大変
そこでアプリケーションを作り自宅からでも商品の管理・出品が効率よくできるような感じです。
IEがアプリケーションに変わるだけと言いましょうかそんな感じのものです
実はナンセンス?

>591にある火壁・ポート開放・・・は、問題なくできているはずです。
会社のHPにもアクセスでき、外部(自宅)からもDBのinsertやらできているので大丈夫だと思っています。
認証はWINDOWS認証です。SQL SERVER認証は訳がわからなかったのでやめた記憶があります。

>593
セッションちょっと調べて見ます

596 :デフォルトの名無しさん:2006/12/10(日) 01:03:41
あのさ、結局「DBに接続するコード」はどこのマシンで動くのよ。
繋がらないのに「外部からはinsertできる」っておかしいじゃんよ。

まさか、WEBアプリならどこからでもOKって当たり前な話じゃないよな?


597 :デフォルトの名無しさん:2006/12/10(日) 01:29:38
区別がついてないんだろ。


598 :デフォルトの名無しさん:2006/12/10(日) 01:33:20
インターネットから直接接続できるDBなんて
ぶっ壊してくれといってるようなもんだろ

599 :デフォルトの名無しさん:2006/12/10(日) 01:44:02
まあしかし前になんだっけ、ウィルスはやったよね。
まあ大抵はあれで懲りたはずだけどな。


600 :デフォルトの名無しさん:2006/12/10(日) 14:15:57
VBでお手軽に別のプログラムから他のアプリケーションプログラムを起動させたり、
入力ボックスに自動で入力したり、ボタンを押したりさせるような関数とかって
あるんですか。やはり、WIN32APIでの話題になるのでしょうか?


601 :デフォルトの名無しさん:2006/12/10(日) 14:20:36
起動だけなら System.Diagnostics.Process で容易に可能だが、
操作となると .NET の標準ライブラリだけじゃ不可能だな

602 :デフォルトの名無しさん:2006/12/10(日) 14:26:33
>>601サンクス

603 :デフォルトの名無しさん:2006/12/10(日) 18:37:20
┌─┬─┬─┬─┐
│  │  │  │  │
├─┼─┼─┼─┤
│  │  │  │  │
├─┼─┼─┼─┤
│  │  │  │  │
└─┴─┴─┴─┘
ピクチャーボックスで描いた表のマスそれぞれを二次元配列にしていきたいんですけどどうすればよいのでしょうか?
最終的にはクリックしたマスが何列何行目のマスか一発でわかるようにし処理を加えたいと思っています
(例えば左から2番目上から3番目をクリックすると配列(2,3)で処理を行う)

表はなんとか作成できたのですが、ここで詰まっています
'縦の線
For X = 0 To Xmax
  g.DrawLine(Pens.Black, X * MasuSize, 0, X * CellSize, Xmax * MasuSize)
Next
'横の線
For Y = 0 To Ymax
  g.DrawLine(Pens.Black, 0, Y * MasuSize, Ymax * MasuSize, Y * MasuSize)
Next

Xmax、Ymaxは行と列の数、MasuSizeはマスの幅がそれぞれInteger形式で入っています。

604 :デフォルトの名無しさん:2006/12/10(日) 18:48:19
>>603
他人にわかる人語すら満足に書けない人が
コンピュータのコード書けるわけないよ、悪いけど。

ここで詰まってます?
「ここ」って何だよ?w

605 :デフォルトの名無しさん:2006/12/10(日) 18:57:19
「ここ」って言うのは最初に説明した
ピクチャーボックスで描いた表のマスそれぞれを二次元配列にしていきたい
ってことです。わかりにくくてごめんなさい。

606 :デフォルトの名無しさん:2006/12/10(日) 18:58:43
最近煽るだけ煽っていくやつがいるな
他人にわかる人語すら満足に書けない人が
コンピュータのコード書けるわけないとか
自論持ち出してるけど証拠はあるのかよw

607 :デフォルトの名無しさん:2006/12/10(日) 19:05:15
>>605
悪いがなんの説明にもなってない。
表のマスをそれぞれ二次元配列にする、とはどういう意味だ?

608 :デフォルトの名無しさん:2006/12/10(日) 19:09:02
うざ

609 :デフォルトの名無しさん:2006/12/10(日) 19:28:06
うざくてもなんでもいいが、自分の問題を正確に言葉で表現しない限り、
他人の協力は永遠に得られないよ。
606のような自分の言葉を自分自身に適用できない馬鹿は湧いてくるかもしれないがw

まあ問題を表現できないのは、表現力の問題もあるだろうがそれ以前に
本人が自分の問題がよくわかってないから、問題を分析的に把握できてないからだろう。

把握できてもいない問題のコードなんて永遠に書けるはずがないだろ。

610 :デフォルトの名無しさん:2006/12/10(日) 20:01:27
>>609の言いたいことは俺も同意する。
だが、>>603の言いたいことは、わかるだろ。
イマジーネーションがなければ、言葉で正確に表現できたとしても、
新しいものは生み出せないだろう

と言ってみる。



611 :デフォルトの名無しさん:2006/12/10(日) 20:01:54
お目汚し失礼しました。
どうせこれ以上説明したところで上手く説明できないでしょうし
恥の上塗りになるだけでしょうから
他に頼る人もいないし自力で頑張ります。

612 :デフォルトの名無しさん:2006/12/10(日) 20:03:49
要はなんだ?>>603はオセロ系のゲームを作りたいのかな?

613 :デフォルトの名無しさん:2006/12/10(日) 20:05:38
>>603
.NETのことあまり知らんが、クリックされた時に発生するイベントがあるだろ?
そのイベントでクリックされた座標Cx,Cyがとれるだろ??
そしたら、
Tx=Cx/CellSize
Ty=Cy/CellSize
配列(Tx,Ty)=????
みたいな感じでいいじゃないかね??
この場合、グリッドの左上を原点とした場合だけど、あとは適当に
補正してくれ。



614 :デフォルトの名無しさん:2006/12/10(日) 20:08:25
>>611
つか、気にするなよ。はじめは、みんなだいたい新しい言葉を上手く
使いこなせいもんだよ。


615 :酔いちくれ ◆J0rwikii8c :2006/12/10(日) 20:16:41
うははw
やべぇ、酒の肴がたくさんだw


エンドユーザの意見を吸い上げる事に比べれば、
>>603は全然わかりやすい
614のとおり、気にするなw


なにより、AAうまくね??


いろんな解釈ができそうだ
動的にコントロールを作って、配列にぶちこんでるのか、
単純に座標をつついたときに、配列にビットでもたてるのか。

まぁ、もういいのか。

616 :デフォルトの名無しさん:2006/12/10(日) 21:00:35
>>613
ありがとうございます
今出かけてるんで明日家に戻ったらやってみます

>>614-615
優しいですね。ありがとうございます
<<612さんの仰るとおりオセロではありませんがそんな感じのゲームにする予定です
まずはプログラムの知識がないと質問するのも難しいものですね
勉強になりました

617 :デフォルトの名無しさん:2006/12/12(火) 11:26:57
デリゲートって、どんなレベルになると必要になるんですか?
初心者は必要ない?

618 :デフォルトの名無しさん:2006/12/12(火) 11:40:05
イベント使うだろ?
ま、意識はしてないだろうけど。

619 :デフォルトの名無しさん:2006/12/12(火) 11:41:10
質問です。
ClickOnceで配布するプログラムを作成しているのですが、
その場合、ユーザーが個別に設定を保存するのに適した方法は分離ストレージ以外に存在しますか?
spreadの列幅などを保存したい時は列幅分だけ項目を作るのは手間なのですが・・・

620 :デフォルトの名無しさん:2006/12/12(火) 11:53:21
>>619
My.Settingsじゃ駄目なの?

621 :デフォルトの名無しさん:2006/12/12(火) 12:07:21
質問です。
mp3をデコードするためにいろいろ調べたところ
http://kone.vis.ne.jp/diary/diaryb09.html
をみつけたのでacmStreamを使ってやろうとしているんですが、
Public Declare Function acmFormatSuggest Lib "msacm32.dll" _
(ByVal had As Long, ByRef pwfxSrc As MPEGLAYER3WAVEFORMAT, _
ByRef pwfxDst As MPEGLAYER3WAVEFORMAT, _
ByVal cbwfxDest As Integer, ByVal fdwSuggest As Integer) As Integer

のところで引っかかるようです。
さらに調べたところhttp://e-blog.tokonats.net/e-diary/2004-06-18_1606.html
に書いてあるとおり構造体に2バイトフッタのようなものがあるようなのですが、
どうすれば動くようになるのでしょうか?



622 :621:2006/12/12(火) 12:11:35
訂正
引っかかる場所はacmFormatSuggestを呼び出す場所です。

623 :619:2006/12/12(火) 12:37:01
>620
いえ、プログラム中で新規に項目を追加する方法が見つからなくて。

624 :デフォルトの名無しさん:2006/12/12(火) 12:40:59
>>622
まず自分の「ひっかかる」って説明が説明になっているかどうかって点に
ひっかかろうよ。

625 :デフォルトの名無しさん:2006/12/12(火) 12:51:21
>624
説明って言われてもコンパイルエラーも出なければ
実行時にエラーをはくわけでもないからどうともいえないんですよね。

ただきっちりと実行してくれないという感じなんで。

626 :デフォルトの名無しさん:2006/12/12(火) 13:05:46
>>625
引数とか構造体のサイズまちがってんじゃねーの?
そのフッタがどうのってVBの話だろ? .net関係ないじゃん
いきなりハンドルをLongとかしちゃってるけど


627 :619:2006/12/12(火) 13:20:14
>>626
ほかのサイトも調べてたんですが
ハンドルの型はVBの場合だとLongかIntegerでいいそうなんです。

構造体のサイズはLen関数でとってるんでおそらくあってると思います。

今考えてみたらかなりスレ違いみたいですね。
申し訳ないです。

628 :デフォルトの名無しさん:2006/12/12(火) 13:21:06
↑名前間違えた
621です。

629 :デフォルトの名無しさん:2006/12/12(火) 13:42:45
>>623
グリッドレイアウトなんかは静的だと思うからプログラムで
新規項目作る必要なんてあるのか?というのは置いといて

シリアライズするとかコレクションに入れればなんとかなるんじゃない

630 :デフォルトの名無しさん:2006/12/12(火) 14:23:37
>>627 スレ違いじゃないよ

631 :デフォルトの名無しさん:2006/12/12(火) 18:27:39
いやスレ違いでしょ。619はVB6ユーザーみたいな感じだね。

っていうか、>>625みたいな寝ぼけたこと言ってるようじゃ、
相当救い難いお方だとお見受けするね、619クンは。

632 :デフォルトの名無しさん:2006/12/12(火) 18:37:58
>ハンドルの型はVBの場合だとLongかIntegerでいいそうなんです
>ハンドルの型はVBの場合だとLongかIntegerでいいそうなんです
>ハンドルの型はVBの場合だとLongかIntegerでいいそうなんです


633 :621:2006/12/12(火) 19:58:42
>>631
使ってるのはVB.NETの2003ですよ。

とりあえずデバッグして気づいたのはReturn値を取ってなかったのが
問題のようでReturn値を見るとエラーの値が帰っていましたが、
どのようなエラーなのかはわかりませんでした。

>632
http://www.activevb.de/rubriken/apikatalog/deklarationen/acmformatsuggest.html
ここを参照しての発言ですが
やはりハンドルの構造体は必要なんですか?

634 :デフォルトの名無しさん:2006/12/12(火) 20:15:08
こんな丸投げ馬鹿に手取り足取り教えてやろう、
なんてお人よしが果たしているかね。

普通質問っていうのは自分で調べた上で不明点を聞くものだろう。

635 :621:2006/12/12(火) 20:27:23
丸投げにしてるわけではないんですよ。

ただそう思われてるんならもう聞かないことにします。

636 :最凶VB厨房:2006/12/12(火) 20:53:41
あわてんな。ゆっくりせぇ

637 :デフォルトの名無しさん:2006/12/12(火) 21:20:22
とりあえずWebに書いてあるコードがVB6かVB.NETか区別できるようにしような

638 :デフォルトの名無しさん:2006/12/12(火) 21:38:17
VB.NETスレに初心者スレがないのはみんな初心者だから?


639 :デフォルトの名無しさん:2006/12/12(火) 21:45:04
>>634
なんのためにこのスレいるんだよ。
回答者面して、何も解決する気ないなら、このスレ一切覗くなよ。
そのほうが、おまえの精神衛生上よろしいだろ。

お ま え の 憂 さ 晴 ら し は う ぜ え ん だ よ 

べつにここはサポセン仕事じゃないんだから答えなくていいんだぞ

        と  っ  と  と  う  せ  ろ  

640 :デフォルトの名無しさん:2006/12/12(火) 21:51:48
煽り屋は回答を行わない法則

641 :デフォルトの名無しさん:2006/12/12(火) 22:24:13
まあ「エラーの値が返ってきたけど意味がわかりませんでした」
ってその値書かなかったり、その意味の調べ方を訊ねないのもな……

だから>>634みたいに書いちゃうのもあまり責められない。
それでどうしたいの? って言いたくなる気持ちも分かるよ


642 :デフォルトの名無しさん:2006/12/12(火) 22:33:05
>>639
お前さん、いい加減自分の言葉を自分自身に適用することを覚えろよ……。

っていうか、お前さん、自分の発言が俺を擁護するものであることに気づいてるか?w
そう、お前さんの言うとおり誰も答える義務はない。
だから「気に入らない奴」には回答しないんだよ。
「気に入らない奴」とは、一言で言えば自助努力をしない奴、する気のない奴だな。

「気に入らない」奴がスレに居つくのは俺の精神衛生上よくないから、
あえて「気に入らない」奴にとって居心地が悪いスレになるように心がけてるって訳。

643 :デフォルトの名無しさん:2006/12/12(火) 22:35:03
隊長!自作自演警報発令中であります!

644 :デフォルトの名無しさん:2006/12/13(水) 00:09:23
VB2005ExpでWindowsフォームで、データバインドしたDataGridViewにバインドしない列を最後尾に追加しました。
で、この列の並びがビルドするたびに前のほうに行ってしまうのを防ぐためには「列の自動生成オプション」とやらをオフにすればいいところまでは分かったのですが、どこでするのか分かりません。
AutoGenerateColumnsであってます?DGVのプロパティに無いし…しかもForm1.Designer.vbを覗くと
'DataGridView1

Me.DataGridView1.AutoGenerateColumns = False
ってなってるんですけどねぇ…あうぅ…

645 :デフォルトの名無しさん:2006/12/13(水) 11:47:39
DataGridView については専用のスレッド
http://pc8.2ch.net/test/read.cgi/tech/1165757442/l50

がありました。そちらで聞かれるといいかも・・・
自分もあちらで聞いていました。

646 :デフォルトの名無しさん:2006/12/13(水) 14:27:51
>>642
質問者レベルをコントロールしたいなら、
自分で管理する掲示板でしろ。

647 :デフォルトの名無しさん:2006/12/14(木) 00:04:21
理解不足を棚に上げ煽り、1行レスで返す方が多いようですが、
そのような方はスレの皆様を混乱させるだけでなく
スレの雰囲気を崩しかねないのでお黙り下さい。

また質問者は回答者に知識を披露する場を与える貴重な存在なので、
質問者を見下した回答、あまりにも儀礼を欠いた回答も厳重に禁止いたします。
忙しい中、少ない時間の合間を縫って質問しに来てるわけですので、
その辺ご承知下さい。なお、当方が質問に対して有意義な答えであると
判断した方には評価いたしますので各自よく調べ、よく考え正確な回答をするように。

648 :デフォルトの名無しさん:2006/12/14(木) 10:07:06
>>647
君が評価してくれるの?

コテハンにしてくれない?

649 :デフォルトの名無しさん:2006/12/14(木) 18:26:04
>>647
で・・・どこを縦読みすればいいわけ?

650 :デフォルトの名無しさん:2006/12/14(木) 20:23:18
            /  ///// ////ハヾヽト、ヾリメヽ
             /   //////|l|l|l|l川l|j  iメ!l|l| | l|l|l|lト、
            /     l|l|l | |l|!|l|l|l川l|!  | |l|l| | l|l川l|l|
        / // ィl|l|| | |l| |l|l升十ト、 | !|l|l| 川l川l|l|!
         | / / |川||l  |l|川||  川川 升ト川l|リ
         | / / /|l|l| | |l  ヽーr==、      ___|ノノ
         |// / ∠川 川   ヽヾ:::::ノ      イ::::「
        |////´r-、ヾl     `'ー‐'       、゙ーヘ
        V/ハ ヽ  l|   ////            !
         V/彡、 \ ノ                   /
         ヾミミ>-、              ⌒ /  >>647いつにもましてキモイなこいつ
          ト=-、彡ヘ、    J         /
          |川|l川l| ノ)、             /
           |川l川l|!(((ハ      「 ̄´
            |川l|川l|_,ノ_,ノ!       |、
             |川l|<ヾ、   `ヽ、     〉`ー-、
             !川/⌒ヽ、ヽ、    `'ー<⌒ヽ 川
          川l|     \`'ー------ `ヽハ|l|lト、
           /|l|ll|      `ヽ、ヾ、_`'ー-=ニ三ヾ!l|\

651 :デフォルトの名無しさん:2006/12/14(木) 21:48:14
正規表現と置換についての質問です
例えばPerlで1行全体の文字列に対してTABをSPACEに変換したい場合
s/\t/ /g;
このように書きますが
.NETの場合どの様に書いたらいいのでしょうか?
String^ str = "hoge  hoge  hoge";
str = Regex::Replace(str, "\t", " ");
これでは部分マッチングしかできないですよね?

652 :デフォルトの名無しさん:2006/12/14(木) 21:51:08
651です
スマソVBスレでしたね(^^;
ごめんなさい、でも分かる人いたら教えてもらえませんかVBでもいいので
タノンマス


653 :デフォルトの名無しさん:2006/12/14(木) 21:56:23
なんでリファレンス見ないの?

654 :デフォルトの名無しさん:2006/12/14(木) 21:59:40
リファレンスの見方が良く分かんないんだよね、ぐぐったけど
旨くヒットしないし・・・・

655 :デフォルトの名無しさん:2006/12/14(木) 22:04:15
こんな奴が C++/CLI か。世も末だな。

656 :デフォルトの名無しさん:2006/12/14(木) 22:06:10
str = Regex::Replace(str, "\t", " ");
コレデ全体の置換もOKだったなワハハ

657 :デフォルトの名無しさん:2006/12/15(金) 03:00:12
【使用環境】vb.net2003

PictureBox1_Paintイベントで
e.FillRectangle(Brushes.black, 0, 0, 500, 500)
と黒色の四角を描画し、

PictureBox1_MouseDownイベントで
Dim g As Graphics = PictureBox1.CreateGraphics
g.DrawEllipse(Pens.white, 0, 0, 100, 200)と、
PictureBoxをマウスで押すことによって黒色の四角の上に円を書くプログラムを作ったのですが
実行したウィンドウを最小化したりすると描いた円が消えてしまいます。

ウィンドウを最小化したり、サイズを変えたりしても
黒色の四角の上に円が描かれ続けているようにするにはどうすればよいのでしょうか?
ご存知の方いましたらよろしくお願いします。

658 :デフォルトの名無しさん:2006/12/15(金) 06:54:38
ResizeRedraw

659 :デフォルトの名無しさん:2006/12/15(金) 11:27:01
PaintやMouseDownでGraphicsに直接描かずに
pictrureBox1.ImageにつっこんだBitmapに描く

660 :デフォルトの名無しさん:2006/12/16(土) 10:21:52
VC8をよく使いますが、自前のANSI Cで書いた関数をDLL化して
.NETで呼び出すことって可能デツカ?


661 :デフォルトの名無しさん:2006/12/16(土) 10:26:46
可能

662 :デフォルトの名無しさん:2006/12/17(日) 13:40:35
以前、相互に循環する画面遷移を、
DLLでやってたプロジェクトに参加してたけど、
どうやって、可能にしていたのだろう?




663 :デフォルトの名無しさん:2006/12/17(日) 14:42:31
いみがわかんない


664 :デフォルトの名無しさん:2006/12/17(日) 20:18:19
2次元のarraylistって作れるんですか?

665 :デフォルトの名無しさん:2006/12/17(日) 20:22:32
ジャグ配列的になら

666 :デフォルトの名無しさん:2006/12/17(日) 20:33:12
初心者な俺には理解できない用語がorz
伝票発行するソフトつくらなきゃいけないんですがDBだと難しくなりそうなんでCSVと配列でどうにかならないかなと思って。

部門、商品、相手先、入力データそれぞれ横6要素以上あって読み書きを頻繁にするとなるとおとなしくADOかなんか
勉強するしかないのかな・・・

667 :デフォルトの名無しさん:2006/12/17(日) 21:09:51
>>666
ジャグ配列なんてどうでもいい。

正規化はわかるのか?




668 :デフォルトの名無しさん:2006/12/17(日) 21:13:47
667が日本語をうまく使えない、ということはよくわかるよ。

669 :デフォルトの名無しさん:2006/12/17(日) 21:16:58
>>668
665乙。

670 :デフォルトの名無しさん:2006/12/17(日) 21:17:34
え、俺?

671 :デフォルトの名無しさん:2006/12/17(日) 21:18:44
え、え、俺?

672 :デフォルトの名無しさん:2006/12/17(日) 21:20:00
え、え、え、俺?

673 :666:2006/12/17(日) 21:20:52
えっと俺はどうボケればいいんでしょうか?ヽ(;´Д`)ノ

674 :デフォルトの名無しさん:2006/12/17(日) 21:24:41
ちょっとマジレスしますよ

>>666
伝票発行ソフトってことだけど元になるデータはどこ?

675 :666:2006/12/17(日) 21:33:52
元のデータですか?
えとMDBかCSVにいれておこうかと思ってるんですが・・・

676 :デフォルトの名無しさん:2006/12/17(日) 21:37:44
>>666
素直にアクセスでやるのが吉

677 :デフォルトの名無しさん:2006/12/17(日) 21:58:13
\1,980で買えるアプローチでいいじゃん

678 :674:2006/12/17(日) 22:23:05
CSVを「これから作る」でおk?
だったら
一行分の構造体orクラスを定義して
配列なりファイルアクセス用のクラスなりを使えばいける

ただしデータ構造が単純であることが大前提になるけど
単なる検索やソート以上の処理をするならAccessの方が楽かと

679 :674:2006/12/17(日) 22:33:29
簡単にインターフェースの概要をば

一行分のデータのクラス(以後一行データ)
各アイテムのアクセサ
Shread Parse(string):一行データ (Newを利用する方法もある)
ToCSVLine():string(ToStringをオーバーライドする方法もある)

ファイル全体のクラス
Item(int) : 一行データ
Load:(IO::FileInfo):void
Save(IO::FileInfo):void


Loadのときは一行ずつParseで一行データを生成、
Saveのときは一行ずつToCSVLineで文字列に変換して書き込み

680 :デフォルトの名無しさん:2006/12/17(日) 22:57:43
まあその説明でわかればたぶん質問しないわな。
こういう自己陶酔型の人ってヒトから自分がどう見えるか考えないから微笑ましいというか、
ちょっと困ったクンだよねw
っていうか、ここ何のスレだかわかってんの?w

681 :デフォルトの名無しさん:2006/12/17(日) 23:26:08
うんこに群がるフンコロガシのためのスレッド

682 :デフォルトの名無しさん:2006/12/18(月) 00:18:07
きもいよ

683 :酔いちくれ ◆J0rwikii8c :2006/12/18(月) 06:24:40
>>679

1000件のレコードがあった場合は、一行分の子クラスの
インスタンスを1000回生成するの???

684 :666:2006/12/18(月) 07:07:48
みなさんありがとうございます。

元データの商品マスタと部門マスタはあります。
それぞれ列6要素ぐらいで行100〜1000ぐらいです。

初心者なんで理解しきれてないのですが、マスタの一要素ごとに一次元配列を作ってそれをコレクションとかにいれて使うっていうことでしょうか?

あ、ちなみにVB2005EXPRESS使ってます

685 :デフォルトの名無しさん:2006/12/18(月) 08:14:00
>>666
まず具体的に実現したい処理内容をかかなきゃ誰も答えようがないと思いますが。

こういう人って本当どういう頭してるんだろう。
他人はアンタの考えてることが言葉にしなくてもわかるエスパーか何かだと思ってんの?
なんにしろ、説明能力に問題がある時点でプログラマには向いてないといわざるを得ない。

686 :デフォルトの名無しさん:2006/12/18(月) 16:37:03
>>539,634,609,680,685 
これ以上、辿るのめんどくさいからやめた。

この人って本当どういう生活してるんだろ。
仕事では、対人関係の問題で使い物にならないんだろうな。
ネットで延々と煽って憂さ晴らし。ご愁傷様です。

687 :デフォルトの名無しさん:2006/12/18(月) 22:10:41
フォームのサイズを変えたら一緒に
ボタンやラベルを大きくする方法ないですか??

688 :デフォルトの名無しさん:2006/12/18(月) 22:11:44
Anchor
Dock

689 :デフォルトの名無しさん:2006/12/18(月) 22:43:00
>>688
もうちょい詳しくおしえてください・・・

690 :デフォルトの名無しさん:2006/12/18(月) 23:15:49
Anchor 【あんかー】
Dock【どっく】

691 :デフォルトの名無しさん:2006/12/18(月) 23:25:50
いじめられた・・・

692 :デフォルトの名無しさん:2006/12/19(火) 00:09:15
アンカー 船舶が使用する錨のこと
ドック 船舶の製造、修理などに際して用いられる設備

693 :デフォルトの名無しさん:2006/12/19(火) 00:11:55
碇、後戻りはできんぞ
さすがドックだ、なんともないぜ

694 :デフォルトの名無しさん:2006/12/19(火) 00:38:44
これほど「ぐぐれかす」が似合う男もそういないぞ。がんばれ。

695 :デフォルトの名無しさん:2006/12/19(火) 11:24:20
VBのランタイム関数って.NETになってからも追加されているんですかね?

696 :デフォルトの名無しさん:2006/12/19(火) 17:54:34
Microsoft.VisualBasic

697 :デフォルトの名無しさん:2006/12/19(火) 19:42:06
Windows2000(SP4)でVB2005を動かした場合なんですが
フォームにListViewを置いて、そのListViewにToolTipを設定した時
ListViewの空白部分をマウスでポイントすると普通にToolTipが表示されるのですが、
行(ListViewItem)が表示されている部分をポイントすると
ToolTipが一瞬だけ表示されて消えたり、ちらちらと点滅したり
異常な動きをします。

原因、対処法をご存じでしたらお教え下さい。

698 :デフォルトの名無しさん:2006/12/20(水) 11:57:24
VB6 から VB2005 に移行して勉強した人が、

以前からの会社の都合でどうしても VB.NET 2003 とかで開発する

必要がある、というような場合、言語上で新たに覚えないといけないような点

はありますでしょうか?


Version としてはバックすることになりますが、VB2005 の方が楽になっている

ので VB.NET 2003 とかに戻ると オブジェクト指向プログラミング的に

厳密にやらないといけない部分が出てくると思うのですが、その辺で

やっかいな部分から列挙するとどんな感じになるでしょう、、

このあたりを心配していましたが、すみませんが、よろしければこの件で

ご指導くださればありがたく、よろしくお願いします


それとも、VB.NET 2003 で開発していた案件はすべて 

VB2005 に移行していくと考えてよいでしょうか

この辺もよろしければ教えてくださると助かります

699 :デフォルトの名無しさん:2006/12/20(水) 11:59:19
上げるの忘れました、スマソ

700 :デフォルトの名無しさん:2006/12/20(水) 14:34:40
言語よりむしろNET Framework 2.0と1.xの違いの方が大きいと思われ。


701 :デフォルトの名無しさん:2006/12/20(水) 22:14:33
一番大きいのは Using が無い事か?
ジェネリクスの方はどうも VB ではあまり聞こえてこないんだが導入に積極的でないのかね

702 :デフォルトの名無しさん:2006/12/21(木) 08:19:32
このスレは既にPart17ですが、いったいみなさんはVB.NETで何を開発してるのでしょうか??
やっぱ、ほとんど、サーバーサイドのWebアプリケーションでしょうか??
クライアントサイドの.NETアプリをあまり見かけないので質問しました。


703 :デフォルトの名無しさん:2006/12/21(木) 08:33:23
質問があります。

エディタにxxxxx.ToStringと入力した時にToString()って
自動的にカッコが付く様にはできないのでしょうか?

704 :デフォルトの名無しさん:2006/12/21(木) 12:27:01
VS、というかVBのエディタの設定項目なんて数える程しかないのにな。
仮に500以上の設定項目が幾重かの階層になっている、とかなら
>>703みたいな質問もさもありなんと思うんだけど。

まあ703みたいな人がPGに基本的に向かない性格なのは疑いようがない

705 :デフォルトの名無しさん:2006/12/21(木) 12:35:11
>>704
真性のキチガイやろう。

湧いて来るんじゃねぇよ。

706 :デフォルトの名無しさん:2006/12/21(木) 12:38:33
>>704 氏ねよクズ 死ねよ

707 :デフォルトの名無しさん:2006/12/21(木) 12:39:46
(・∀・)ジサクジエンデシタ

708 :デフォルトの名無しさん:2006/12/21(木) 12:40:13
お前ら耐性なさ杉だ

709 :デフォルトの名無しさん:2006/12/21(木) 12:42:44
「教えて君」「教える君」というのは、
ネット上に存在する2種類の人種の人たちを示す揶揄された敬称のことであるが
その影には「教えない君」という人種が多数いるの事にはあまり注目されていない。

しかし、実はその「教えない君」という人種が一番厄介かつ迷惑な存在だったりするのである。
そもそも荒れる原因というものは「教えない君」の、無秩序かつ、無神経なレスにある部分が
大多数なのだが、彼らの多くは、そういった感覚はどうやら持ち合わせていないようである。

第三者がそうした場面を見た場合に、誰に一番の非があるというのは
「教えない君」にあるというのが客観的事実であるのは明らかなのであるが、
彼らは認めようとしない。

表面上は、「教えない君」はネット上のルールや倫理や秩序などを叫ぶのであるが
どうやら真相は、現実社会において蔑まれる存在である「教えない君」の
鬱憤晴らしのようである。

上記でそういった悲哀のレスを付けた人たちは、勇気を持って自らの弱さと過ちを認め
反省しなければならない。
それがキミたちニートの人間的に成長できる少ないチャンスなのである

710 :デフォルトの名無しさん:2006/12/21(木) 12:59:11
長文カキコorコピペする「粘着くん」もいるみたいですよ


711 :デフォルトの名無しさん:2006/12/21(木) 12:59:22
500以上の設定項目が幾重かの階層になっているなら質問OKだってw

ハハハハハ
死ねよクズ

712 :デフォルトの名無しさん:2006/12/21(木) 13:18:57
500もの設定の中から探すような
規模の事しか質問してはいけないって オイオイ

713 :デフォルトの名無しさん:2006/12/21(木) 18:42:59
ComオブジェクトのShockwave Flash Objectをコントロールとして利用したいのですが、

依存する COM 参照 "stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" を解決できませんでした。
タイプ ライブラリ "AxShockwaveFlashObjects" のラッパー アセンブリを作成できませんでした。種類 'Microsoft.Build.Tasks.ComReferenceResolutionException' の例外がスローされました。

などのエラーが発生して、利用することが出来ません。前までは出来ていたのですが、、、

714 :酔いちくれ ◆J0rwikii8c :2006/12/21(木) 19:25:04
>>713
外してたら、スマソ。


2003で使ってたのが、2005で使えなくなったとか。

715 :デフォルトの名無しさん:2006/12/21(木) 19:41:32
いえ、2005環境で使うことが出来ていました。今試したところ、Delphi6でも貼り付けることができました。
・・・何が原因なんでしょう。

716 :酔いちくれ ◆J0rwikii8c :2006/12/21(木) 19:49:26
内部でラッパーのAxShockwaveFlashObjectsにアクセスできてない
みたいだから、AxInterop.ShockwaveFlashObjects.dllが悪いのは
確かと思う。

フレームワークが同居してるなら、そのDLLを探してみるのも
いいかも。

ちょっとDelphiは知識ないから、スマソ。

717 :713:2006/12/21(木) 21:03:13
原因が分かりました。
参照の追加でCOMタブのOLE Automationを参照させないと実行できないようです。
お騒がせしてすいませんでした。

718 :デフォルトの名無しさん:2006/12/21(木) 22:28:12
ttp://www.microsoft.com/japan/learning/mcp/developers/default.mspx
や ら な い か


719 :デフォルトの名無しさん:2006/12/23(土) 11:47:03
データグリッドの最初の列を足したいんだけど、For eachで書けないかな?
下ので一応いけるんですが。

Dim sum As Single
For i = 0 To DGV.RowCount - 1
sum += DGV.Item(0, i).Value
Next
MessageBox.Show(sum)

720 :デフォルトの名無しさん:2006/12/23(土) 11:50:08
変数名からして DataGridView のようだが。

721 :デフォルトの名無しさん:2006/12/23(土) 12:06:07
Option Strict Offなソースを見ると何か嫌な気分になる

722 :デフォルトの名無しさん:2006/12/23(土) 13:09:52
>>720
そうです。

723 :デフォルトの名無しさん:2006/12/23(土) 13:29:51
>Dim sum As Single
なんでSingle…


724 :デフォルトの名無しさん:2006/12/23(土) 13:39:43
>719

つか集計したいのなら、DataColumn.Expressionでsumするのが
早いと思うが…。

つttp://msdn.microsoft.com/library/ja/cpref/html/frlrfSystemDataDataColumnClassExpressionTopic.asp


725 :デフォルトの名無しさん:2006/12/23(土) 22:53:30
>723
少数があるので。

>724
ありがとうございます。参考にさせてもらいます。

726 :デフォルトの名無しさん:2006/12/24(日) 05:01:00
すみません、オブジェクト志向プログラミングについて日が浅いもので
よくわからないのですが、、

たとえば、あるクラスから生成されたオブジェクトのコレクションが定義されているとして、
そのADDメソッドには、その元のクラスから派生されたオブジェクトを指定してコレクションに
追加していくことはできるでしょうか

たとえば、TreeViewコントロールにおいて、あるノードに子ノードを追加するという場合、
その子ノードは(ノードのコレクションである以上)TreeNodeクラス型オブジェクトでなければ
ADDできないと思っていましたが、実際には、「TreeNodeクラスの派生クラスのオブジェクト」
でもADDできているようでした。

これは通常の コレクションにおけるADDメソッド のデフォルトの性質でしょうか?

ヘルプの説明では普通に TreeNodeクラス型のオブジェクトをADDするようになっています
ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.ja/CPref17/html/M_System_Windows_Forms_TreeNodeCollection_Add_1_526d62f3.htm

初心者ですみませんが、よろしくお願いします

727 :デフォルトの名無しさん:2006/12/24(日) 09:56:13
ArrayList というコレクションが標準ライブラリにある。
これの Add メソッドは引数に Object 型を要求する。

さて、Object 型しか入れられないのならこのコレクションの存在意義ってなんだ?

728 :デフォルトの名無しさん:2006/12/24(日) 11:01:47
>>727
どうもです、ありがとうございます

要するに ADDメソッド の基本機能が、そもそもどんなオブジェクトでもADDできる
ようになっている、ということなのですね

ArrayList.Add メソッド を見ると、はじめから ADD(”・・・”) で String型 の値を
渡してもそのままADDされるということは、ADDの引数は始めからオーバーロード
で定義されているということもあるのでしょうか、ただ

ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.ja/cpref2/html/M_System_Collections_ArrayList_Add_1_b4c5a2da.htm

には、オーバーロードの複数引数定義は書かれていませんでした


それとも、Object型として引き受けるということ自体が、String型の値でも元々引き受ける
ようにできているということなのでしょうか、つまりオブジェクト指向での必要条件として
元々 ADDメソッド はこういう構造になっていると・・・)、このどちらなのでしょう?

729 :デフォルトの名無しさん:2006/12/24(日) 11:06:30
派生クラスのインスタンスは基底クラスのインスタンスとして振る舞う事が出来る。
それだけ。

ついでに言うと全てのクラス・構造体は Object クラスから派生する。
String クラスのインスタンスは基底クラスである Object クラスのインスタンスとして振る舞う事が出来る。

730 :デフォルトの名無しさん:2006/12/24(日) 11:14:03
例として
 TreeNodeCollection.Add メソッド
の説明ですと、
 ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.ja/CPref17/html/O_T_System_Windows_Forms_TreeNodeCollection_Add.htm
のように、
 String型の値のADD、TreeNode型のオブジェクトのADD
も共にオーバーロードの定義が明示されていましたので、型の拡張は明示されて
初めて利用可能になるものと考えたのでした

731 :デフォルトの名無しさん:2006/12/24(日) 11:16:40
>>729
あ、すみません、かぶりました

>派生クラスのインスタンスは基底クラスのインスタンスとして振る舞う事が出来る。

つまりオブジェクト指向の標準として、そういうことななのだと、
わかりました。

ありがとうございました。



732 :デフォルトの名無しさん:2006/12/24(日) 11:20:27
>>730の 「TreeNodeCollection.Add メソッド」 のような場合は
他の引数のオーバーロードも定義したので、基本的な標準の
 String型の値のADD、TreeNode型のオブジェクトのADD
もついでに記載した、ということなのでしょうね。

ご指導ありがとうございました。

733 :デフォルトの名無しさん:2006/12/25(月) 18:44:38
いやTreeNode型のオーバーロードが標準だろ
あとはそれに皮をかぶせただけのオマケ

734 :デフォルトの名無しさん:2006/12/25(月) 20:27:07
Windows Media Playerを制御することってできますか?
ファイルを指定して再生、停止、開始/終了時間の範囲指定など。

735 :デフォルトの名無しさん:2006/12/25(月) 21:51:19
できます

736 :デフォルトの名無しさん:2006/12/26(火) 02:39:28
こんばんは

例外を以下のように処理しようとしているのですが、
メッセージボックスが表示されずに、通常のエラーメッセージが表示されます
原因は何でしょうか?

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

 Dim A As String = "aaa"
 Dim B As Integer

 Try
   B = CType(A, Integer)
 Catch ex As Exception
   MessageBox.Show("Error")
 End Try
End Sub

737 :デフォルトの名無しさん:2006/12/26(火) 06:00:31
ネタ?
ネタだよな?


738 :デフォルトの名無しさん:2006/12/26(火) 06:48:40
質問です。

1を2のように記述したら警告になってしまうのですけど、
この警告を出ないようにするにはどうすればいいですか?
おしえてちょ。

1 Me.DialogResult = Windows.Forms.DialogResult.OK
2 Me.DialogResult = DialogResult.OK

739 :デフォルトの名無しさん:2006/12/26(火) 08:16:06
理由がわかるようになるまで学習を進める、が正解だと思うよ。

740 :734:2006/12/26(火) 08:27:26
>>735
どのクラスライブラリを使えばいいんでしょうか?
よかったら教えてちょ

741 :デフォルトの名無しさん:2006/12/26(火) 10:32:23
>>736

  ∧ ∧
 (*‘ω‘ *)  ちんぽっぽ
  (   )
   v v
        ぼいんっ
    川
  ( (  ) )


>>740
wmp.dllを参照に追加



742 :デフォルトの名無しさん:2006/12/26(火) 14:05:23
皆様お疲れ様です、またよろしくお願いします。
(タイトル)  デザイン環境による作成時にコントロールを初期化する方法について
(開発環境) VS2005Pro
(実現したい内容)
 コンポーネント・クラスの作成の仕方として、そのコンポーネントを アプリケーションの
 フォーム・デザイン時に単に貼り付けた時点でのみ動作する初期化どのように実装するか
(試行)
  <System.Diagnostics.DebuggerNonUserCode()> _
  Public Sub New()
MyBase.New()
'この呼び出しは、コンポーネント デザイナで必要です。
InitializeComponent()
  End Sub
  に追加しますと、実行時にも実行されてしまう
(その他に)
  ComponentDesigner.InitializeNewComponent メソッド
    ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.ja/dv_fxdeveloping/html/914eaa03-092f-4556-9160-b8a2a40641d9.htm
    ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.ja/cpref3/html/M_System_ComponentModel_Design_ComponentDesigner_InitializeNewComponent_1_d8aa9975.htm
 を用いる説明があり、Public Overrides Sub InitializeNewComponent(ByVal defaultValues As IDictionary)〜End Sub
 を *..Designer.vb に追加してみるものの継承元のクラスには同メソッドはなくエラーとなり、
 Overrides をはずしてエラーを回避し実装したが (ComponentDesignerクラスは特に利用して
 いないためか)その中にに書いたコードは実行されず
(・・・) フォーム・デザイン時に単に貼り付けた時点でのみ動作する初期化はどのようにして実装するべきか、よろしくご指導ください、お願い致します

 



743 :デフォルトの名無しさん:2006/12/26(火) 14:14:29
ネイティブジャパニーズとはとても思えない日本語だな
if DesignMode

744 :734:2006/12/26(火) 14:23:53
>>741
できません。。。
ぐぐると http://www.users.gr.jp/blogs/hidori/articles/5302.aspx
ツールボックスにWindows Media Player コンポーネントが
出てくるらしいのですが、出ません。

当方、
・WinXPSP2Pro
・Windows Media Player10
・VB2005Express
なんですが・・・orz

ちなみに上記からダウンロードしたソースをC#2005Expressで開くと実行できましたが、
やはりツールボックスにはWindows Media Player コンポーネントがありません・・・

もしかしてExpressEditionではダメなんですかね?

745 :デフォルトの名無しさん:2006/12/26(火) 14:30:32
>>744
http://homepage1.nifty.com/rucio/main/kiso/Kiso14AddControl.htm

746 :デフォルトの名無しさん:2006/12/26(火) 14:51:59
>>743
日本語下手ですんません、どう書くと整理できるか編集中にてにをはが狂いました。
実は Windowsアプリケーションに貼り付けるコントロールだったのですが、

>if DesignMode

これを書いてみたところデザイン時も、実行時も常に False のようで、どちらでも
実行されませんでした(継承元のクラスは TreeView)。

ヘルプによると、DesignMode は 
 名前空間: System.Web.UI
 アセンブリ: System.Web (system.web.dll 内)
とあったので Web部品用のものなのでしょうか?

747 :734:2006/12/26(火) 14:52:47
>>745
ありがとうございました。
できました(´∀`)

748 :デフォルトの名無しさん:2006/12/26(火) 14:54:46
>>746ですが、実際には System.Web.UI を Imports していなくても
使えていたので、「Web部品用」でなくても持ってるプロパティですよね
うーん、どうしてだろ。。。

749 :デフォルトの名無しさん:2006/12/26(火) 15:21:12
>>748
System.ComponentModel.Component.Designmodeだよ。
で、C#の記事だけどこれかな?
http://blogs.wankuma.com/mnow/archive/2006/11/08/44120.aspx

750 :デフォルトの名無しさん:2006/12/26(火) 17:02:24
>>749
どうもです、そうでした、System.ComponentModel.Component にも
DesignMode はありました。

Parent の DesignMode はその記事の通りやはり Protected だった
ようでエラーとなりました。

いまいろいろ調べてみましたがまだ解決していませんが、
さらに調べてみます。

751 :デフォルトの名無しさん:2006/12/26(火) 20:25:20
ttp://www.be-interactive.org/index.php?itemid=118&catid=10
これをVB2005で行いたいのですが、どのようにすれば良いのか分かりません。

Const WM_COPYDATA As Integer = &H4A
Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hWnd As Integer, ByVal MSG As Integer, ByVal wParam As Integer, ByVal lParam As COPYDATASTRUCT) As Integer

Sub main()
Dim sendMes As New COPYDATASTRUCT
sendMes.lpData = _
New System.Text.StringBuilder("TestAPP" + Chr(0).ToString + "Music" + Chr(0).ToString + "1" + Chr(0).ToString + "{0} - {1}" + Chr(0).ToString + "TEST" + Chr(0).ToString + "TEST")
sendMes.cbData = sendMes.lpData.Length + 2
SendMessage(132030, WM_COPYDATA, Nothing, sendMes)
End Sub

Public Structure COPYDATASTRUCT
Const dwData As Integer = 1351
Public cbData As Integer
Public lpData As System.Text.StringBuilder
End Structure

このようにしたところ、SendMessageのところでTypeLoadExceptionを吐いてしまいます。

よろしくお願いします。

752 :デフォルトの名無しさん:2006/12/26(火) 20:48:53
・文字コードはそれで大丈夫?
 ANSIだと
  sendMes.cbData = sendMes.lpData.Length + 1
 だと思うけど。
 SendMessageWにしてCharSet = CharSet.Unicodeにし、
 その場合
  sendMes.cbData = (sendMes.lpData.Length + 1 )*2

・シグネチャ
  ByVal lParam As COPYDATASTRUCT → ByRef lParam As COPYDATASTRUCT



753 :デフォルトの名無しさん:2006/12/26(火) 20:55:40
回答ありがとうございます。・・・しかし無理でした。COPYDATASTRUCTのlpDataが悪さしているようですが、、、

Const WM_COPYDATA As Integer = &H4A
Declare Ansi Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Declare Unicode Function SendMessage Lib "user32.dll" Alias "SendMessageW" (ByVal hWnd As Integer, ByVal MSG As Integer, ByVal wParam As Integer, ByRef lParam As COPYDATASTRUCT) As Integer

Sub main()
Dim sendMes As New COPYDATASTRUCT
sendMes.lpData = _
New System.Text.StringBuilder("TestAPP" + ChrW(0).ToString + "Music" + ChrW(0).ToString + "1" + ChrW(0).ToString + "{0} - {1}" + ChrW(0).ToString + "TEST" + ChrW(0).ToString + "TEST")
sendMes.cbData = (sendMes.lpData.Length + 1) * 2
SendMessage(FindWindow("MsnMsgrUIManager", Nothing), WM_COPYDATA, Nothing, sendMes)
End Sub

Public Structure COPYDATASTRUCT
Const dwData As Integer = 1351
Public cbData As Integer
Public lpData As System.Text.StringBuilder
End Structure

754 :デフォルトの名無しさん:2006/12/26(火) 21:04:56
もうぶっちゃけちゃうと、

COPYDATASTRUCT.lpData をIntPtrにして文字列をMarshal.AllocHGlobal, Marshal.StringToHGlobalAutoで割り当てる
(あとでFreeHGlobal)
んで
sendMes.cbData = (sendMes.lpData.Length + 1) * 2

COPYDATASTRUCTそのものもMarshal.StructureToPtr, Marshal.StructureToPtrでメモリに割り当てて
(あとでFreeHGlobal)

そいで
SendMessageの第4引数をByVal IntPtrにする。

755 :デフォルトの名無しさん:2006/12/26(火) 21:17:52
もうこれはあきらめるしか無いのですかね、、、

Const WM_COPYDATA As Integer = &H4A
Declare Ansi Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Declare Unicode Function SendMessage Lib "user32.dll" Alias "SendMessageW" (ByVal hWnd As Integer, ByVal MSG As Integer, ByVal wParam As Integer, ByRef lParam As System.IntPtr) As Integer

Sub main()
Dim sendMes As New COPYDATASTRUCT
Dim str As String = "TestAPP" + ChrW(0).ToString + "Music" + ChrW(0).ToString + "1" + ChrW(0).ToString + "{0} - {1}" + ChrW(0).ToString + "TEST" + ChrW(0).ToString + "TEST"
Dim ptr As IntPtr
sendMes.lpData = System.Runtime.InteropServices.Marshal.AllocHGlobal(System.Runtime.InteropServices.Marshal.StringToHGlobalAuto(str))
sendMes.cbData = (str.Length + 1) * 2
System.Runtime.InteropServices.Marshal.StructureToPtr(sendMes, ptr, True)
SendMessage(FindWindow("MsnMsgrUIManager", Nothing), WM_COPYDATA, Nothing, ptr)
System.Runtime.InteropServices.Marshal.FreeHGlobal(sendMes.lpData)
System.Runtime.InteropServices.Marshal.FreeHGlobal(ptr)
End Sub

Public Structure COPYDATASTRUCT
Const dwData As Integer = 1351
Public cbData As Integer
Public lpData As System.IntPtr
End Structure

756 :デフォルトの名無しさん:2006/12/26(火) 21:20:51
ミスしました。
Dim ptr As IntPtr = System.Runtime.InteropServices.Marshal.AllocHGlobal(System.Runtime.InteropServices.Marshal.SizeOf(sendMes))
これだとうまくいくっぽい、、、

757 :デフォルトの名無しさん:2006/12/26(火) 21:25:48
やっぱりダメでしたorz

758 :デフォルトの名無しさん:2006/12/26(火) 21:31:25
一度メッセージ受けるだけのアプリ作ってみれば?
とりあえずメッセージとその内容が正しく届いてるか確かめるためにさ。

文字列をマーシャリングするときに\0で終了と認識されてるのかも。
byte配列とかにする必要があるかもね〜


759 :デフォルトの名無しさん:2006/12/27(水) 02:51:36
こいつの(Cで書かれた)ソースにもコメントに書かれているんだが。
途中の区切文字は"\0"であって、
chr(0)でもchrW(0)でもvbNullCharでもvbNullStringでもString.EmptyでもNothingでもない。

Structure COPYDATASTRUCT
Dim dwData As Int32
Dim cbData As Int32
Dim lpData As IntPtr
End Structure
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal data As IntPtr) As IntPtr
Private Declare Ansi Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
Private Sub SongNameSendToMessenger()
Dim dtstrct As New COPYDATASTRUCT
Dim buf As String = Nothing
Const WM_COPYDATA As Integer = &H4A
buf = "OrgApp\0Music\01\0{0} - {1}\0曲名\0アーティスト名\0アルバム(シングル)名" & vbNullChar
dtstrct.dwData = 1351
dtstrct.cbData = buf.Length * 2
dtstrct.lpData = Marshal.StringToHGlobalUni(buf)
Dim MyPointer As IntPtr = Marshal.AllocHGlobal(Marshal.SizeOf(dtstrct))
Marshal.StructureToPtr(dtstrct, MyPointer, False)
Dim hWnd As IntPtr = FindWindow("MsnMsgrUIManager", Nothing)
Dim ret As IntPtr = SendMessage(hWnd, WM_COPYDATA, 0, MyPointer)
Marshal.FreeHGlobal(MyPointer)
End Sub

760 :デフォルトの名無しさん:2006/12/27(水) 09:04:32
ネタだろといわんばかりだ。

761 :デフォルトの名無しさん:2006/12/27(水) 18:47:00
>>755
たぶんこれでいけるんじゃないかな?
なんちゃらメッセンジャーなんてクソ鬱陶しいソフトは使ってないので試してないが、
とりあえずメッセージの送信はこれでできているはずと思う。
見ればわかると思うけど、Formのコマンドボタンのクリックで送信するようになってる。
あと、いろんなところに属性がくっつけてあるけど、あまり考えずテキトーに使っているので
たぶん冗長なものがあると思う。
  Const WM_COPYDATA As Integer = &H4A

  <DllImport("user32.dll", CharSet:=CharSet.Unicode)> _
  Private Shared Function FindWindow(ByVal lpClassName As String, ByVal lpWindowName As IntPtr) As IntPtr
  End Function

  <DllImport("user32.dll", CharSet:=CharSet.Unicode)> _
  Private Shared Function FindWindow(ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
  End Function

  <DllImport("user32.dll", CharSet:=CharSet.Unicode)> _
  Private Shared Function SendMessage(ByVal hWnd As IntPtr, _
                  ByVal MSG As Integer, _
                  ByVal wParam As Integer, _
                  ByRef lParam As COPYDATASTRUCT) As IntPtr
  End Function

  <StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Unicode, pack:=4)> _
  Public Structure COPYDATASTRUCT
    Public dwData As Integer
    Public cbData As Integer

    <MarshalAs(UnmanagedType.LPWStr)> _
    Public lpData As String
  End Structure

762 :デフォルトの名無しさん:2006/12/27(水) 18:47:39
  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim sendMes As COPYDATASTRUCT
    Dim strArray As String() = {"TestAPP", "Music", "1", "{0} - {1}"}
    Const separator As String = "\0"
    Dim str As String = String.Join(separator, strArray)
    Dim byteCount As Integer = Encoding.Unicode.GetByteCount(str)

    With sendMes
      .dwData = 1351
      .lpData = str
      .cbData = byteCount + 2
    End With

    'メモ張のウィンドウハンドルを取得してみる。
    Dim hWnd As IntPtr = FindWindow("Notepad", IntPtr.Zero)
    Console.WriteLine("hWnd = " & hWnd.ToInt32.ToString("X8"))
    Dim ret As IntPtr = SendMessage(hWnd, WM_COPYDATA, 0, sendMes)
    Console.WriteLine("SendMessage = " & ret.ToInt32.ToString("X8"))
    '自分にも同じメッセージを送ってみる。
    ret = SendMessage(Me.Handle, WM_COPYDATA, 0, sendMes)
  End Sub

  Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
    MyBase.WndProc(m)
    Select Case m.Msg
      Case WM_COPYDATA
        Dim dat As COPYDATASTRUCT _
          = CType(Marshal.PtrToStructure(m.LParam, GetType(COPYDATASTRUCT)), COPYDATASTRUCT)
        Console.WriteLine("Received String = " & dat.lpData)
    End Select
  End Sub

763 :デフォルトの名無しさん:2006/12/27(水) 19:28:34
>>759,>>761
ありがとうございます、出来ました。

764 :デフォルトの名無しさん:2006/12/27(水) 20:57:03
Visual Basic 2005 Express Editionで手軽に使用できるフリーのグラフを描画できるライブラリってありませんかー

765 :デフォルトの名無しさん:2006/12/27(水) 23:29:30
VB2005には、ExcelのScreenUpdateのように描画を後でまとめて処理する
ような関数は用意されているんでしょうか?

766 :デフォルトの名無しさん:2006/12/28(木) 19:39:37
VB2005で作成したDLLファイルなどのクラスライブラリを使用する
Windowsアプリケーションを構成すると、それらのDLLを含む形で
Releaseフォルダーが出来上がりますが、それらのDLLファイルを
初めから実行ファイル.exeに入れ込んでしまうようなビルドって
できましたっけ?

767 :デフォルトの名無しさん:2006/12/28(木) 21:52:06
ソリューションのプロパティのコンパイルのところの
ビルド出力パスの設定をすればOK

768 :デフォルトの名無しさん:2006/12/28(木) 21:52:43
じゃないな

769 :デフォルトの名無しさん:2006/12/28(木) 21:54:26
出力ディレクトリにコピーというところを する に設定
すればってことか?

770 :デフォルトの名無しさん:2006/12/28(木) 22:25:51
フォルダごと自己解凍形式のEXEにする

771 :デフォルトの名無しさん:2006/12/28(木) 22:37:03
>>766
むりぽ

772 :デフォルトの名無しさん:2006/12/28(木) 23:24:37
>>766
フルマネージドなアセンブリなら、ildasm/ilamsを使って統合できるよ。
バッチを組めば全自動でできる。

773 :デフォルトの名無しさん:2006/12/29(金) 00:53:21
ILMerge


774 :デフォルトの名無しさん:2006/12/29(金) 01:00:58
>>773
へーへーへー

775 :デフォルトの名無しさん:2006/12/29(金) 13:44:25
こんにちは
VB2005使ってPACMAN作りたいんですけど
どんな風に作ればいいですか?
正方形のPicBOXを並べて中の画像を入れ替えたりするのか
それともPicBOXを移動させるべきなんでしょうか・・
移動させるとなると、どこからどこまで移動できるのかなどは
どのように定義してやれば良いんでしょうか;;

アドバイスお願いします

776 :デフォルトの名無しさん:2006/12/29(金) 13:51:19
作りたいように作れば?
どんな風って、中華風のコピーでしょ?


777 :デフォルトの名無しさん:2006/12/29(金) 14:09:14
>>767-774
ご教授助かります、
>>772 ilasm
>>773 ILMerge
というのがあったんですね!

現在まだ明確に理解できていませんが、MSIL や JIT 等についても
調べつつありました

>>772 ilasm
で生成される実行可能ファイル.exe は、MSILファイルをポータブル実行可能
ファイル.exe にするためのアセンブラーで、統合する機能はあるかどうか
(参照) http://msdn2.microsoft.com/ja-jp/library/496e4ekx(VS.80).aspx
・・・単一のファイルのアセンブル用(つまり通常のVS環境で生成される
  exeと同等のアセンブル用)なのかもしれないかとも思われました

>>773 ILMerge
こちらですとDLLファイル等をexeファイルに統合するようでした(現状実施未確認)

これらと、JITコンパイルとの関係がまだよく理解できていませんでしたが、次のように
考えておいて良いでしょうか?

 1.通常VSによるコンパイル=ilasm → ソースからMSILを経て単一の exe や dll へ
 2.ILMerge → それら exe や dll を一つにまとめるまでを行い、JITコンパイル相当の
           アセンブルは行なわれない
 3.JITコンパイル → 1や2で作成されるファイルはすべて実行時に初めてマシン固有の
               機械語に落ちる

778 :デフォルトの名無しさん:2006/12/29(金) 14:16:41
>>777
これに関連してですが、一旦 ILMerge で作成された統合実行ファイル exe は、
もはや ildasm で 逆コンパイルすることはできないのでしょうか?

もし逆コンパイルできないようになってしまう場合は、リバースエンジニアリング不能に
なってソースのセニュリティ上は都合がいいかもしれませんが・・・

779 :デフォルトの名無しさん:2006/12/29(金) 14:21:41
なんかかわいいな、せにゅりてぃ

780 :デフォルトの名無しさん:2006/12/29(金) 15:10:18
単にILのコードを繋げるだけじゃないの

781 :777:2006/12/29(金) 17:53:30
ILMerge を使って試しに1本のファイルを作ってみたところ、確かにそれ1本だけで動作しました。

>>780
どうも’MSIL へのコンパイル ’
http://msdn2.microsoft.com/ja-jp/library/c5tkafs1(VS.80).aspx
によりますと、

-------
”MSIL とメタデータは、実行可能ファイルのファイル形式として使用されてきた従来の Microsoft PE と
COFF (Common Object File Format) に基づき、それらを拡張したポータブル実行可能 (PE) ファイル
に格納されます。

MSIL、ネイティブ コード、およびメタデータを保存できるこのファイル形式を使用すると、オペレーティング
    ~~~~~~~~~~~~~~~~~~
システムが共通言語ランタイムのイメージを認識できるようになります。MSIL と共にメタデータが
このファイルに格納されるため、コードは自己記述型になります”
-------

とあり、どうも VS開発環境 および ilasm が出力する exe ファイルそのものが、
 「ポータブル実行可能 (PE) ファイル」
であり、ということはその中にすでに ネイティブ コード が埋め込まれているかのような説明に読め
ましたが、現実にPE形式のファイルにはすでに JITコンパイルされた後にできるはずの ネイティブ コード 
が含まれてしまっているのでしょうか?

782 :デフォルトの名無しさん:2006/12/29(金) 18:06:32
C++/CLIとかで意図的にネイティブコードを混ぜることができることを指してるのかな

783 :デフォルトの名無しさん:2006/12/29(金) 19:29:56
>>781
あんまり俺解釈するな。


784 :777:2006/12/29(金) 19:44:57
>>782
あ、なるほど、そういうことか、であればJITコンパイルで出来上がるネイティブ・コードが
含まれていることはなさそうですよね

ということは、結局MSILレベルで複数のexeやdllがうまく結合されて1本にまとまっている
ということになり、逆にいえばコードの構造は ildasm (逆アセンブル)可能となって
>>778のリバース読み込みも不可能ではない、ということになるのかも

結局、「MSIL → *.exe」 を行なっている ilasm は 「実際にはアセンブルというほど
”コード変換” は行なっていない」 ということなのか・・・


785 :デフォルトの名無しさん:2006/12/29(金) 19:57:55
だから俺解釈するなと。

>「MSIL → *.exe」 を行なっている ilasm 
なんでそうなる。
ああ、それともMSILをMSILのソースコードの意味で書いてるのか?
ならまさにアセンブルだろうに。


786 :765:2006/12/29(金) 20:37:23
スルーされてますが、無いでFA?

787 :デフォルトの名無しさん:2006/12/29(金) 20:39:02
>>785
>ああ、それともMSILをMSILのソースコードの意味で書いてるのか?
>ならまさにアセンブルだろうに。

なるほど、そういわれてみれば・・・わかりました

788 :デフォルトの名無しさん:2006/12/29(金) 20:51:23
>>786
Bitmapオブジェクトに対して描画しといてあとでDrawImageする

789 :デフォルトの名無しさん:2006/12/29(金) 21:14:23
>>788
おいおいw
あのさあ、>>765は愚問なんだよ。
愚問というより、質問として成立してないだろ。
こういうエスパーでなければ理解できない質問書く奴も馬鹿だが、
エスパーでもないのに理解できたつもりになって回答する奴も同じぐらい馬鹿だと思うよ。

まあ俺もエスパーじゃないんだがあえて答えるとするなら、
エクセルのScreenUpdatingと同等のプロパティを持つコントロールはあるよ、って回答になるかな。

790 :デフォルトの名無しさん:2006/12/29(金) 21:52:51
>>789



791 :デフォルトの名無しさん:2006/12/30(土) 02:18:32
>>765
コントロールの配置や再描画ならこの辺でいけたはず
つControl.Invalidate
つControl.Update
つControl.SuspendLayout
つControl.ResumeLayout

画像の話なら>>788でおkかと

>>789
エスパー向け質問ってのは"俺が理解できない質問"のことではないぞ
少なくとも俺は>>765の質問は簡潔で具体的だと思うが

792 :デフォルトの名無しさん:2006/12/30(土) 12:07:02
>>791
お前さんも馬鹿だな。

偉そうに人に講釈たれたいなら、まずエクセルのScreenUpdate(正確にはScreenUpdatingだが)
の動作を調べてからにしたらどうだ。

ついでに言えば、具体的なのは妄想癖持ちのお前さんの脳が勝手に補完した妄想なのであって、
765の文章では決してないから。

793 :デフォルトの名無しさん:2006/12/30(土) 12:41:13
>>792
わたしは>>791じゃないが、そこまで煽るほどの違いではないと思う






794 :791:2006/12/30(土) 20:31:10
>>792
すまん。確かにScreenUpdatingがどんなものか調べずに書いた。
ということで調べてみた

ttp://www.moug.net/tech/exvba/0010005.htm

SuspendLayoutでいいと思うんだけど問題ある?

ところでこの機会にエスパー向け質問の定義について教えてくれないか?
個人的には質問者が何をしたいのか文面からまったく読み取れないものだと思ってたんだけど。

795 :デフォルトの名無しさん:2006/12/30(土) 21:50:48
>>794
>SuspendLayoutでいいと思うんだけど問題ある?
だからいいかどうかは質問者本人とエスパーにしかわからん。
たとえば次のコードのような場合はエクセルのScreenUpdatingに期待される機能と違う。

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
With TextBox1
.SuspendLayout()
.AppendText("test" & vbCrLf)
End With
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.ResumeLayout()
End Sub

>ところでこの機会にエスパー向け質問の定義について教えてくれないか?
「自分自身の想像と妄想による勝手な補完」と、「文面に書いてあること」、
あるいは「相手が言わんとしていること」の区別が付かない君にそれを教えろって言われても
それは無理な相談だよ。

796 :デフォルトの名無しさん:2006/12/30(土) 22:13:48
うるせー馬鹿

797 :デフォルトの名無しさん:2006/12/30(土) 23:11:47
MenuSpritの区分線ってどうやって出すんだ・・・?

798 :デフォルトの名無しさん:2006/12/30(土) 23:46:30
MenuStrip?
ならToolStripSeparatorをAddするだけっしょ

799 :デフォルトの名無しさん:2006/12/31(日) 00:01:31
MenuStripでした・・。
選択項目の中にSeparatorは出せるんですけど、MenuStrip自体に下線を出したいんです。

800 :デフォルトの名無しさん:2006/12/31(日) 01:13:02
「&」

801 :デフォルトの名無しさん:2006/12/31(日) 07:53:55
くだらない質問かもしれませんが許してください

たとえば、TextBox1.textに変数を代入したいとして、この"1"の部分を
変数で指定することはできませんか?

802 :デフォルトの名無しさん:2006/12/31(日) 10:15:52
>>801
formHOGE.Controls("TextBox" & Cstr(1)).Text

名前で呼ぶよりは、必要なコントロールの参照を別変数に抱えておけば?

dim textList as Dictionary(of String, TextBox)
textList.Add(TextBox1.name, TextBox1)
textList("TextBox1").text = "xxx"






803 :デフォルトの名無しさん:2006/12/31(日) 10:28:09
>>802
説明ありがとうございます。助かりました。

804 :デフォルトの名無しさん:2006/12/31(日) 11:27:56
>>802
結局名前をキーにしたら一緒だろ
配列使え

805 :デフォルトの名無しさん:2006/12/31(日) 11:41:27
>>804
フォームだと、スプリットパネルなどを置いた場合に階層の上にコントロールがのるので。
最初の例はフォーム上においてるだけならOKだけど。
ディクショナリにしておけば、配列としても、名前アクセスも使えるし。

大体、入れるものが限定されてるのに普通の配列を使うメリットは?



806 :酔いちくれ ◆J0rwikii8c :2006/12/31(日) 11:50:34
連想配列やHashMapやらわかってるのかね。

807 :デフォルトの名無しさん:2006/12/31(日) 11:58:27
順序性を求めるならDictionaryを使わないよ、当然。
そこに引っかかってるの?いちいち。
どれつかったらいいなんて、ヘルプ見れば数分でしょ。
元質問に対してこんなんどう?って出しただけなのに。

808 :デフォルトの名無しさん:2006/12/31(日) 12:00:08
>名前で呼ぶよりは、
>textList("TextBox1").text = "xxx"
ここだろ

809 :デフォルトの名無しさん:2006/12/31(日) 13:29:04
>>806何が言いたい?

810 :最凶VB厨房:2006/12/31(日) 17:09:02
計算量じゃないか?

811 :酔いちくれ ◆J0rwikii8c :2006/12/31(日) 17:18:08
>>809
非常に申し訳ない。

酔って寝てた。
自宅にフレームワークが1.1しかないから、検証もできない。

ただ、javaだと、HashTableとHashMapでは同期、非同期という
違いがある。

誰が見ても、可読性という意味で配列で
Private TextBoxes() As TextBox
とした方がいいと思う。

あと、メタ文字の使い方が変。

812 :デフォルトの名無しさん:2006/12/31(日) 17:38:25
ますます意味がわからんな。

正直、この程度のこと実装にこだわるような類の問題とも思えないが。
機能的に等価であれば方法はなんでもいいだろ。
μSオーダーの周期でコントロールのプロパティ設定するわけでもなかろうにw

とはいえ、簡略的にとにかくインデックスでコントロールにアクセスできればいい、ってことなら
普通は配列使うだろうけどね。

コントロール名その他いろんな方法でもアクセスしたいとか、VB6のコントロール配列みたいに
イベントまでまとめて処理したいならクラスにまとめるだろうけど。

813 :デフォルトの名無しさん:2006/12/31(日) 17:40:58
>>799
>>798

ただし自分でAddするコードを書く必要がある。
this.menuStrip1.Items.Add( new ToolStripSeparator() );

814 :デフォルトの名無しさん:2006/12/31(日) 18:23:24
2005において、配列も集合クラスも大差ないのに、配列に拘る意味がわからん。

815 :デフォルトの名無しさん:2007/01/01(月) 13:05:16
下のような変数宣言で型名を[]で囲んでいる、
ソースがあるのですが、どんな意味があるのですか?

Dim str As [String]



816 :デフォルトの名無しさん:2007/01/01(月) 14:23:07
エスケープ識別子

っていうか、そんなレベルの質問してる時点であんたの才能知れたもの。
どうせ馬鹿なら正月ぐらいのんびりしてればいいのに。

817 :デフォルトの名無しさん:2007/01/01(月) 17:43:22
でも、そこを囲む奴の考えも知れたものだね。
または超のつく偏屈野郎。

818 :デフォルトの名無しさん:2007/01/01(月) 18:43:33
>>816
まだ生きてたの?
答えずに死ねよ。

819 :デフォルトの名無しさん:2007/01/01(月) 19:07:34
正月なんだからVB厨同士仲よくしろよ


820 :デフォルトの名無しさん:2007/01/01(月) 20:11:45
>>816
元旦早々、返信ありがとうございます。
こんな機能があったんですね。
>>817
MSDNのサンプルコードにあったもので。
Dns.Resolve メソッド

821 :デフォルトの名無しさん:2007/01/02(火) 02:03:21
.focusを利用してテキストボックスのコントロール配列にフォーカスを
指定しても、実行後、設定されていません
テキストボックスではなくタブページにフォーカスが設定されてしまいます

考えられる原因としては何があるのでしょうか

822 :デフォルトの名無しさん:2007/01/02(火) 02:33:39
日本語でおk

823 :デフォルトの名無しさん:2007/01/02(火) 02:37:23
>>822
まだ生きてたの?
おまえは何も答えずに死ねよ。


824 :デフォルトの名無しさん:2007/01/02(火) 02:40:16
821の追記ですが、
タブページ上にテキストボックスを貼り付けて、
そのテキストボックス配列にフォーカスを設定したいのです

825 :超初心者。:2007/01/02(火) 05:59:23
VB.NETの研修でオセロゲームを作成しました。
PLAYした感想を聞かせてください。
難易度は4段階。是非、超難しいを倒してみてください。

DLはこちらから↓
http://www.rupan.net/uploader/

NO 1102 Othello.exe オセロです。お借りします。

826 :デフォルトの名無しさん:2007/01/02(火) 06:21:29
>>825
EXEだと?ふざけんな。ウィルスだったらどうする。
zipでソースを上げろ。コンパイルして走らせる。

827 :超初心者。:2007/01/02(火) 06:44:09
>>826
.zipにすることは全然可能ですけども、
ソースを晒すことは不可能です。

ウイルスじゃないのでご安心を。

828 :デフォルトの名無しさん:2007/01/02(火) 06:48:36
(・∀・)カエレ!!

829 :超初心者。:2007/01/02(火) 06:52:00
>>826=828
しょぼいコードですが、ソースを晒す気は全くありません。
.exeとなっていますが、解凍が実行されるだけです。
その際も、解凍先を指定する際、一度止まります。
解凍した後は、オセロフォルダの中の
Othello.exeをダブルクリックして実行してください。

オープンソースではないというだけです。

830 :デフォルトの名無しさん:2007/01/02(火) 06:53:52
つーかスレ違いだ
ほか池

831 :デフォルトの名無しさん:2007/01/02(火) 07:09:49
>>829
ふざけんな死ね
スレ違いだ

832 :デフォルトの名無しさん:2007/01/02(火) 07:37:06
それにしてもここまで醜悪なプログラムは見たことがないw

石の色を文字列でもってるとか、あまつさえHashtableに格納してるとか
ほとんど同じ処理の連番の関数が何個もあるわ、
盤の一枡ごとにPictureBoxつくって、おまけにHashtableで管理してるわ。

833 :最凶VB厨房:2007/01/02(火) 11:24:34
神にしてやられますた。
黒駒焼きは最悪だなw
まぁでも二回勝ったわ。
全部マス埋められてんのに、CPUがPASSしますってバグだろ。
ちょっとそのメソッド長いんじゃないか?w
なかなか楽しめたが、スレ違いだ。

834 :デフォルトの名無しさん:2007/01/02(火) 11:41:31
MSDN のフォーラムでも聞いておりましたが、まだわかりませんでした。
こちらでもお聞きしますがよろしくお願いします。

実行時におけるコントロールのDragによるサイズ変更方法についてお尋ねします。
SplitContainerの場合は、同一コントロール内での間仕切り位置の変更という形、
またSplitterコントロールを利用する方法もDockingされたコントロール間の間仕切り
としての利用法はHelpにも書かれていました。

VB6.0では、例えばLabelコントロールなどを利用し、単独でサイズ変更したい
コントロールのBorderの一辺におき、それをDragすることでMouseの位置変更情報を
読み取り、その情報から該当のコントロールのサイズ変更を行なうといった方法を
使っておりました。

VB.NETまたはVB2005以降でもやはり上記のようにVB6.0で行なっていたような方法
による以外にはないでしょうか?

それとも、もっと楽にできる方法があればと思いました。
たとえばビルトインされているスマートな方法が実装されていたりするとだいぶ助かる
のですが、そういったものはすでにあるでしょうか。よろしくお願いします。


835 :デフォルトの名無しさん:2007/01/02(火) 21:12:09
非常に手抜き
パネルの上にピクチャボックス乗せて
Private Sub PictureBox1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.MouseEnter
_OnCtrl = True
End Sub
Private Sub PictureBox1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.MouseLeave
_OnCtrl = False
End Sub
Private Sub Panel1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Panel1.MouseEnter
_OnPan = True
End Sub
Private Sub Panel1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Panel1.MouseLeave
_OnPan = False
End Sub
Private Sub Panel1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseUp
_OnDrg = False
End Sub
Private Sub Panel1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseDown
If Not _OnDrg Then
_OnDrg = True
_PrvPnt = New Point(e.X, e.Y)
End If
End Sub


836 :デフォルトの名無しさん:2007/01/02(火) 21:14:04
Private Sub Panel1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseMove
Dim _wk As Integer

If Not _OnCtrl AndAlso _OnPan AndAlso _OnDrg Then
_CurPnt = New Point(e.X, e.Y)
Console.WriteLine(_PrvPnt.ToString + " " + _CurPnt.ToString)

If _CurPnt.Y < PictureBox1.Top + PictureBox1.Height Then
_wk = Panel1.Width
_wk += _CurPnt.X - _PrvPnt.X
If _wk < 6 Then _wk = 6
If _wk > 480 Then _wk = 480
Panel1.Width = _wk
PictureBox1.Width = _wk - 5
Else
If _CurPnt.X < PictureBox1.Left + PictureBox1.Width Then
_wk = Panel1.Height
_wk += _CurPnt.Y - _PrvPnt.Y
If _wk < 6 Then _wk = 6
If _wk > 480 Then _wk = 480
Panel1.Height = _wk
PictureBox1.Height = _wk - 5
Else


837 :デフォルトの名無しさん:2007/01/02(火) 21:14:45
_wk = Panel1.Width
_wk += _CurPnt.X - _PrvPnt.X
If _wk < 6 Then _wk = 6
If _wk > 480 Then _wk = 480
Panel1.Width = _wk
PictureBox1.Width = _wk - 5
_wk = Panel1.Height
_wk += _CurPnt.Y - _PrvPnt.Y
If _wk < 6 Then _wk = 6
If _wk > 480 Then _wk = 480
Panel1.Height = _wk
PictureBox1.Height = _wk - 5
End If
End If
_PrvPnt = _CurPnt
End If
End Sub


838 :デフォルトの名無しさん:2007/01/02(火) 21:17:53
ってデバッグ用のコード抜き忘れたw
マウスカーソルの変更とかはどなたかよろしく

839 :デフォルトの名無しさん:2007/01/03(水) 01:51:49
>>835-838
ありがとうございます。これだけ書かれると大変でしたでしょうね。いろいろすみませんです。

しかし実際にやってみますとこれだけやってもまだ書き足してたくさん調整していかないと
いけないかと思いました。大変な量ですよね。

VB6のときはlabelのDragでやりましたが、あれでも最適化できるまで苦労しました。
VB2005になってもやっぱりこの辺の処理はまだ開発困難の部分かと思いました。

Microsoftが初めからControlクラスのメソッドに入れてくれていたらよかったのですが、
実際にそれはないわけですよね。

840 :デフォルトの名無しさん:2007/01/03(水) 02:07:55
必要になる事なんてまず無いしな

841 :デフォルトの名無しさん:2007/01/03(水) 04:10:52
コントロールを単独でサイズ変更するUIって何に使うの?

842 :デフォルトの名無しさん:2007/01/03(水) 09:25:38
フォームエディターみたいな画面を作るとか?
画面デザインをある程度カスタムできるとか?

まあ、企画壮大、実務未使用な画面のような・・・。


843 :デフォルトの名無しさん:2007/01/03(水) 10:48:29
Googleツールバーみたいにテキストボックスのサイズを変えるときとか。
まあそんなに悩むほどのコードじゃないがな

844 :839:2007/01/03(水) 13:13:02
大変どうもです。

>>840-843
こういう機能は確かにアプリケーションで使う使わないはありますね。

>>843
確かに一回でできてしまえばいいわけですが、いろんな調整も含めて
最適化するなどもあり数日以上掛かるとなると負担ではありました・・・


845 :デフォルトの名無しさん:2007/01/03(水) 13:16:45
ところでVS2005のHelpについてですが、
「Helpのお気に入り」 の並び順はカスタマイズすることはできるものでしたっけ?

最低でもABC順にしたいのでしたが、皆様はどうされていますか?

846 :デフォルトの名無しさん:2007/01/03(水) 15:13:35
おい >>834 = >>839 = >>844
MSDN フォーラムの方は放置か?

847 :デフォルトの名無しさん:2007/01/03(水) 15:35:53
>>846
どうもです、お正月ということもあるかもしれませんが、あちらでもおt答えは
まだいただけていないのですが・・・、この先何か情報がいただけましたら
こちらでもご報告させていただきますです。

たぶん、新Controlクラスに含めてくれるのはたぶんサードパーティの
グレープシティさんあたりでしょうかね・・・そういうクラスライブラリを作ると
けっこう売れる、かもしれません。


848 :デフォルトの名無しさん:2007/01/03(水) 19:49:28
Controlオブジェクトに>>835-837のイベントハンドラを差し込むだけなんだから
Controlを引数にとる汎用的なメソッドを定義しとけばいいだけだろ

849 :デフォルトの名無しさん:2007/01/04(木) 11:22:06
>>848
なるほど、汎用的な方法にもできるんですね!
>>835-837で教えていただいたプログラム・コードで実験してみます!



850 :デフォルトの名無しさん:2007/01/04(木) 19:45:50
>>848>>835-837さん
現在のところまだ不具合が取りきれてはいない状態でしたが、アドバイスの
汎用化の方向も検討します。(まだまだそこまで行ってませんが)当面は
ユーザーコントロールの形で考えてみます。

本件、アドバイスと具体的なご指導のおかげでとても勉強になりました、
大変どうもありがとうございました。

851 :デフォルトの名無しさん:2007/01/04(木) 22:44:20
XML パーサの件で聞いてると思うけど、もう一度聞くね
あのね xmlns って予約語の様なんだけど、その属性値を設定したいんだけど
予約語だから無理って言われるんよ、なんとかパーサ使って設定できない?
テキストライターとか無しでよ、OK

852 :デフォルトの名無しさん:2007/01/04(木) 23:36:16
名前空間

853 :デフォルトの名無しさん:2007/01/05(金) 16:49:12
指定した個数分のLabelを並べて描画したとします。
例えば値が5ならば□□□□□このような形になります。
このラベルをクリックした際に、どのラベルをクリックしたのかを検出するにはどうすれば良いでしょうか?
ラベルはBlockという名で配列化してあり、左端のラベルをクリックしたらBlock(0)のイベントを実行するといった具合です。
まだ勉強初めてからあまり経っていないので書き方が不味くてわかりにくいという事もあるかもしれませんが、宜しくお願いします。

854 :デフォルトの名無しさん:2007/01/05(金) 17:05:59
・それぞれに別々のイベントハンドラを関連付ける
・同じイベントハンドラを使う場合は,sender引数にイベントを送ったオブジェクトが入っているので
それを使って判断する

855 :デフォルトの名無しさん:2007/01/05(金) 18:58:40
激しくデジャブを感じるな。
それも本当につい最近のことのはずだ。
っていうか、同じ奴なんじゃねえの?

まあ同じ奴かどうかわからないけど、なんで>>853見たいな奴って素直に
「VB6のコントロール配列と同じことがしたい」って言えないんだろうなw
こんな発想する奴はVBer以外にありえないのに。

真面目に入門書やwebの情報ぐらい一通り目を通す、
ということをしようともしない自堕落なメンタリティもVBer丸出し。

856 :853:2007/01/05(金) 19:01:21
>854
とりあえずよくわからないのでそれらの単語で調べてみます、有難う御座います

>855
同じような質問があったのですか。課題とかそういうのでは無いんですけどね・・・
自分は今年からVB.NETの勉強を始めただけで、VB6?とかは全く知らないです
こんな発想、との事ですがこのやり方って不味いのでしょうか?
具体的に何をやりたいのかというと、ラベルで升目を作ってボードゲームを作ろうとしているのですが

857 :デフォルトの名無しさん:2007/01/05(金) 19:04:54
>>855
違うみたいね。




単にセンスがないだけ。
ラベルで升目ね……

858 :デフォルトの名無しさん:2007/01/05(金) 19:13:06
もうちょっと勉強を先に進めて,
升目の描画とマウスクリック位置の判断はコントロール任せじゃなくて自分で書け

859 :デフォルトの名無しさん:2007/01/05(金) 19:42:50
自分で描画する手間を考えたらラベルを使うのは場合によっては
悪くない選択だと思うけど俺は。
まあ、がんばっても5x5あたりが限界って気は確かにするが。。

>>856
VB.NET的にはボードを構成するラベルを統括的に管理するクラスを作って、
そいつがラベルがクリックされた時にそれを「座標(x,y)がクリックされたよ」
ってイベントに変換することを考えるのが正道だと思うけど、全くの初心者じゃきついかもね。

っていうか、こうやって基本も理解しないうちから人に質問しようって発想はありえんと思うわやっぱ。
何万円もする高度な学術書にしか書いてないことならともかく、どんなぼったくりの
入門書にも書いてあることだろ。

860 :デフォルトの名無しさん:2007/01/05(金) 20:20:37
>>855
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ
いつもの説教ジジイうぜえええええええええええええええええええええええええ


861 :デフォルトの名無しさん:2007/01/05(金) 20:23:46


ここは、質問者に説教するスレではありません。
ここは、質問者のプログラミングセンスを測るスレではありまえん。
ここは、質問者のプログラマ適性を診断するスレではありません。


何か勘違いしてる人がいますが。



862 :デフォルトの名無しさん:2007/01/05(金) 20:25:11
>>855,859
好きなだけ、説教していいからコテハンにしてくれ。

863 :デフォルトの名無しさん:2007/01/05(金) 20:26:57
三連投 乙

864 :デフォルトの名無しさん:2007/01/05(金) 20:29:26
まあ好きなだけ説教させてもらうし、コテハンなんてやなこっただし、
自分の言葉を自分自身に適用できない馬鹿をからかうことも止めるつもりないけどねw

865 :デフォルトの名無しさん:2007/01/05(金) 20:30:10
>>863
どれだけ、バカで自己中なんだよ。

お前の事をウザイと思ってるヤシがこの少ない住人の中に
三人いたんだよ。
一人じゃねぇよ。

866 :デフォルトの名無しさん:2007/01/05(金) 20:31:52
何万円もする高度な学術書wwww

階層何百もの設定項目以上www



お ま え の 基 準 な ん て ど う で も い い  


867 :デフォルトの名無しさん:2007/01/05(金) 20:34:52
とりあえず例外投げときますね

868 :デフォルトの名無しさん:2007/01/05(金) 20:35:01
当事者だからわかるが、確かに俺も含めて2人はいる。

869 :デフォルトの名無しさん:2007/01/05(金) 20:46:25
誰も相手にされないお局さまが輝ける唯一のスレなんだから、
そっとしておいてやれよ。

コテにはなって欲しいが。

870 :デフォルトの名無しさん:2007/01/05(金) 20:59:31
それを言うならここでレス返すみんなお局なんじゃね?
ここで質問者の意図を繊細に汲みつつ適切なアドバイス返すなんてのは
面倒だし骨が折れるから
自己満足&優越感&無私の奉仕の法悦という代価を受け取りたいとしても
仕方ないんじゃね?



871 :デフォルトの名無しさん:2007/01/05(金) 21:12:59
代価ほしけりゃ、このスレに来ることなく、仕事して報酬を受け取れ。

バカを罵倒することでしか代価が得られないなんて、
おまえ気持ち悪いんだよ。

872 :デフォルトの名無しさん:2007/01/05(金) 21:21:12
一人やたら攻撃的な奴が混じってるな

873 :デフォルトの名無しさん:2007/01/05(金) 21:21:36
ここが質問スレだということを忘れるな

874 :逆噴射J ◆lW31l/VtQc :2007/01/06(土) 08:11:29
よそのスレッドのオブジェクトにもアクセスできるようにCallByName()関数を拡張してみた。
ttp://kenmon.hp.infoseek.co.jp/contents/Monalib.htm#CallByNameEx
感想キボンヌ。

875 :酔いちくれ ◆J0rwikii8c :2007/01/06(土) 10:56:00
>>874
見た。個人で使う分にはコードの量も少なくていいんじゃないの。

仕事でやるなら(多人数で開発)、機能が整理できていないと思う。
例えば、CallByNameではなく、リフレクションを簡単に使える
クラスを一つ作り、拡張していく等。
あとOOPの理解度に難ありかもと感じた。

よそのスレッドのオブジェクトに直接アクセスしたいようだけど、
NUNITとかC#だけどオープンソースだから、参考になると思われ。

876 :デフォルトの名無しさん:2007/01/06(土) 12:39:16
モジュールwww

877 :デフォルトの名無しさん:2007/01/06(土) 15:20:07
いたるところにある、
Catch Ex As Exception
Throw Ex
End Try
は何のためでつか?

878 :デフォルトの名無しさん:2007/01/06(土) 15:24:47
例外の再スロー…だけど,これは間違い。
Catch Ex
Throw
End
が正しい。

879 :878:2007/01/06(土) 15:30:10
間違えた無視して

880 :デフォルトの名無しさん:2007/01/06(土) 15:36:29
それ以前にTryブロックがいらんだろw


881 :デフォルトの名無しさん:2007/01/06(土) 15:57:29
>>877-880
お前らの頭の悪さは、無視できない。

そんなお馬鹿なお前らに例外を投げてあげるのも
部品作成者の仕事。

882 :デフォルトの名無しさん:2007/01/06(土) 16:03:39
なにを言ってんだお前は。


883 :デフォルトの名無しさん:2007/01/06(土) 16:08:34
>>881
Try
冷害投げるかも知れない何か処理
Catch ex As Exception
Throw ex
End Try
これみて何でそう思う。
お前の頭の悪さも無視しがたいな。


884 :デフォルトの名無しさん:2007/01/06(土) 16:14:03
>>883
ステップ実行を行えるIDEで、例外が想定できる処理で
Tryで囲むのは、デバッグ上必要。

よほど、くやしい>>877-880とみえる。

885 :デフォルトの名無しさん:2007/01/06(土) 16:19:39
デバッガで未処理の例外または例外スロー時に
ブレイクするように設定するのが常識。
デバッガでとめるためだけにキャッチしてThrow exなんて論外。


886 :デフォルトの名無しさん:2007/01/06(土) 16:20:36
大体お前は部品利用者のために例外投げろっていってたんじゃなかったのかよ。


887 :デフォルトの名無しさん:2007/01/06(土) 16:24:04
まあなんで論外なのかがそもそも分かってないんだろうけど。


888 :デフォルトの名無しさん:2007/01/06(土) 16:42:12
キャッチして再スローしないと例外は上まであがってこないと思ってました。
デバッガでとめるためにはキャッチするしかないと思ってました。
キャッチしてそのままThrow exすると何がまずいのか知りませんでした。

てことでFA?


889 :デフォルトの名無しさん:2007/01/06(土) 16:44:50
嫌なやつだな

890 :デフォルトの名無しさん:2007/01/06(土) 16:54:21
一人で盛り上がってるヤシがいる。

891 :デフォルトの名無しさん:2007/01/06(土) 16:55:38
ログ記録のためのCatchで記録後さらに呼び出し元にリスローする場合
Throw ex
するとそこでException発生したことになってしまうぞ。
Throw
でりすろう。

892 :デフォルトの名無しさん:2007/01/06(土) 17:19:22
例えばStreamReaderを使用してテキストファイルを読む際に、
指定したアドレス(0x000014Aなど)から読み込む方法ってありますか?

893 :デフォルトの名無しさん:2007/01/06(土) 17:25:32
BaseStream.Seek

894 :デフォルトの名無しさん:2007/01/06(土) 17:42:12
質問です
VB2005のWindowsフォームにCrystalReportViewerを埋め込んで帳票出力をしています。
(Windows2000SP4)

実行時、CrystalReportViewerの印刷ボタンを押すとWindows標準の印刷ダイアログが表示されますが
この時、「印刷範囲」の「選択した部分」チェックボックスが
グレーアウトしてクリックできません。

原因として何が考えられるでしょうか。
CrystalReportViewerを使うとこうなるものなんでしょうか。
そういうものなのか、そんなはずはないのかだけでもわかると助かります。
バージョンはCrystal Reports XI Release 2です。

895 :デフォルトの名無しさん:2007/01/06(土) 18:19:13
>>891
ログ出力も何もしないのにキャッチして再スローするやつが多い。
なぜだ?


896 :デフォルトの名無しさん:2007/01/06(土) 18:21:08
ぼーやだからさ

897 :デフォルトの名無しさん:2007/01/06(土) 19:08:37
キャッチしてログ出力しかしないのも考えものだけどな

898 :デフォルトの名無しさん:2007/01/06(土) 21:31:39
>>895
わけもわからずにコピペしてるから

899 :逆噴射J ◆lW31l/VtQc :2007/01/07(日) 02:03:14
かなり勉強になるね。

>875
リフレクションなんて便利な代物があったとは知らんかった。
アセンブリって色々詰め込まれてるんだな。
NUNITは今ダウソしたとこ。

>876
えっ?
使ってくれる人の既存のソースの動作を変えないように、
標準関数の上位互換を目指したつもりだったけどダメ?(;´Д`)

>877-884
Try
〜〜〜〜
Catch
Throw
End Try
にしろって言いたいんだな。
コードの自動挿入で"Catch Ex As Exception"って入っちゃうから、
"Throw Ex"ってやらなきゃいけないと思ってたよ。

>891
再スローってそうだったのか! トンクス。

900 :デフォルトの名無しさん:2007/01/07(日) 03:18:00
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=963405&SiteID=1
ここのコードのMyDynamicExtender.Finalize()って空のCatchで
ソリューションエクスプローラでプロジェクトのノードを選択したまま
VisualStudio終了するとAccessViolationExceptionが発生するのをもみ消してると思うです。

それってありですか?


901 :デフォルトの名無しさん:2007/01/07(日) 03:36:23
ありです。

GCはファイナライザから例外がスローされるとプロセスを終了させて、全てのリソースを開放しようとする。
つまり、ファイナライザが例外をスローすべきなのは、開放すべきリソースの開放に失敗したとき。

AccessViolationExceptionがでるのは既にリソースが開放されているときだから、例外は握りつぶしてよい。

902 :デフォルトの名無しさん:2007/01/07(日) 08:50:21
MSのサンプルも揉消してるぞ(そうしないと強制終了するしw)

ttp://www.microsoft.com/downloads/thankyou.aspx?familyId=79c7e038-8768-4e1e-87ae-5bbbe3886de8&displayLang=en


903 :デフォルトの名無しさん:2007/01/07(日) 11:17:00
Form1 のイベントハンドラから Form2 にある
テキストボックスにアクセスするには手っ取り早く

MsgBox(Form2.TextBox1.Text)

がいいのかな?

904 :デフォルトの名無しさん:2007/01/07(日) 11:18:57
がいいのかな? じゃねーよ

905 :デフォルトの名無しさん:2007/01/07(日) 13:37:51
こんにちは
質問があります

Webアプリで
Googleにあるような「検索結果ページ: 1 2 3 4 5 6 7 8 9 10 次へ 」みたいなリンクは
一般的にどのコントロールを使って実現させてますか?
もちろんページに表示させる項目によって動的に変化させます。

まだ初心者なので
教えていただけると助かります。

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

906 :デフォルトの名無しさん:2007/01/07(日) 14:37:48
>>903
コントロールを公開して直接アクセスさせるのは極力避けろ
Form2.Textみたいなプロパティを作って間接的に公開する

907 :デフォルトの名無しさん:2007/01/07(日) 16:20:59
VB.NETで作ったプログラムをexeにするのってどやるの?

908 :デフォルトの名無しさん:2007/01/07(日) 16:24:36
普通にビルドした時点でexeですが何か?

909 :デフォルトの名無しさん:2007/01/07(日) 18:32:15
>>900

一番下に寿命管理する方法が載ってるだろ

910 :デフォルトの名無しさん:2007/01/07(日) 18:56:42
>>909

>載ってるだろ

 ・・・回答済みを偉そうに・・・(´ι _`  )

911 :デフォルトの名無しさん:2007/01/07(日) 18:59:43
>>905
HTMLを動的に作成するだけ。

912 :デフォルトの名無しさん:2007/01/07(日) 20:36:12
1週間くらい前からプログラミング始めたんだけど、今の所さっぱり
わかりましぇーん。

913 :907:2007/01/07(日) 21:06:05
VB6で言う「コンパイル」のようなものです

914 :デフォルトの名無しさん:2007/01/07(日) 21:13:35
vbc.exeがコンパイラです

915 :デフォルトの名無しさん:2007/01/07(日) 22:44:33
MSBuildだっけ?で検索してみれば?
nAntとかでも引っかかるかな?

916 :デフォルトの名無しさん:2007/01/08(月) 00:42:56
>>913
>>908

917 :デフォルトの名無しさん:2007/01/08(月) 00:52:54
ビルドの仕方を訊いてるんじゃねえの?

918 :デフォルトの名無しさん:2007/01/08(月) 01:14:52
>>910COMも分からない餓鬼が何吠えてるのw

919 :デフォルトの名無しさん:2007/01/08(月) 01:33:42
>>918
わかったから消えろ

920 :デフォルトの名無しさん:2007/01/08(月) 06:37:53
VB2005の質問です。

http://www.microsoft.com/japan/msdn/thisweek/300x10/Phase3/ToolStrip/vb.aspx
このページに載ってるような、
新規フォームを生成するプログラムを作った場合に、
例えば新規フォーム生成時に任意の場所にラベルを貼り付けたり
ボタンを付けたりといった事をしたいのですが、
そのやり方を教えていただけないでしょうか
宜しくお願いします(o_"_)o

921 :デフォルトの名無しさん:2007/01/08(月) 09:35:55
>>920
普通にNewして座標など指定してVisibleをTrueにすればOK。
イベントはAddHandlerで紐付け。
作り方はフォームのパーシャルクラス(プロジェクトのすべてのファイルを表示)で出てくる。
form.Designer.vb を見れば理解できる。

922 :デフォルトの名無しさん:2007/01/08(月) 16:15:21
>>921
ご教授ありがとうございます。試してみます!

923 :デフォルトの名無しさん:2007/01/08(月) 16:30:02
こんばんわ

質問ですが、
MSDNライブラリーのようなスプリッターを付けたいのですが、
ASP.NETではどのようにして実現されてるのでしょうか?
framesetタグではないですよね?

http://msdn.microsoft.com/library/ja/
左右に動かし、左右のページの幅を調節するもの



924 :デフォルトの名無しさん:2007/01/08(月) 19:32:33
Releaseフォルダに、.pdbファイルが作られますが、
何のためにあるんですか?
配布するときはこれも含めないといけませんか?

925 :デフォルトの名無しさん:2007/01/08(月) 19:37:18
デバッグ用のデータベースファイル。

926 :デフォルトの名無しさん:2007/01/08(月) 20:13:46
Debugフォルダに生成されるのはわかりますが、
Releaseフォルダにまで生成するのは許せません。
何様なんですか><

927 :デフォルトの名無しさん:2007/01/08(月) 20:14:25
お前が何様だ

928 :デフォルトの名無しさん:2007/01/08(月) 20:16:18
リリース構成でデバッグしようと思ったら
まあ仕方ねーんじゃねーの?
嫌ならオフにすりゃいい。

929 :デフォルトの名無しさん:2007/01/08(月) 20:21:27
>>926
設定で変えられるだろ

930 :デフォルトの名無しさん:2007/01/08(月) 20:31:14
>>928
>>929
オプション>プロジェクトおよびソリューション>ビルド/実行
オプション>デバッグ
に無いっぽいけど。どこにあるの?

931 :デフォルトの名無しさん:2007/01/08(月) 20:41:15
詳細コンパイルオプション

932 :デフォルトの名無しさん:2007/01/08(月) 20:42:41
自己解決しました。
プロジェクトのプロパティ>コンパイル>構成(Release)>詳細コンパイルオプション>デバッグ情報を作成(none)
だな。俺天才。

933 :デフォルトの名無しさん:2007/01/08(月) 20:48:25
Releaseフォルダの.xmlも生成しないようにするには、
プロジェクトのプロパティ>コンパイル>構成(Release)>xmlドキュメントファイルを生成する(off)
だな。俺天才。

934 :デフォルトの名無しさん:2007/01/08(月) 20:53:19
時々いるね、こういうどうでもいいことに固執する人って。
俺にはこういうの強迫神経症って奴そのものに見えるよ。
何かの代償行動なんだろうなきっと。

935 :デフォルトの名無しさん:2007/01/08(月) 20:58:22
つまんない

936 :デフォルトの名無しさん:2007/01/08(月) 21:15:28
>>934
> こういうどうでもいいこと

君のようにガサツでずぼらな人にはな。
君、まともなプログラム書けないんじゃないの?

ビルド生成物について気にするのは、誰もが通る道。

937 :デフォルトの名無しさん:2007/01/08(月) 21:42:03
勘違いしているようだが、代償行動だといっているのは
生成物の正体を知ろうとすることではなく、生成を抑制することに固執することだよ。

938 :デフォルトの名無しさん:2007/01/08(月) 21:44:06
ビルドした時にできる bin フォルダと obj フォルダってどう違うの?
配布する exe は以下のどっちのでもいいのですかね
bin\Release
obj\Release

939 :デフォルトの名無しさん:2007/01/08(月) 21:50:02
>>929
>設定で変えられるだろ

 ・・・偉そうに・・・(´ι _`  )

940 :デフォルトの名無しさん:2007/01/08(月) 22:02:29
>>937
> 生成物の正体を知ろうとすること

をしていないなんて、どうやって分かったの?

941 :デフォルトの名無しさん:2007/01/08(月) 22:13:45
いつもの説教ジジイは、
エスパーさんのようです。

精神・心理関係用語を多発していることから、
この方は精神も病んでいるようです。

942 :デフォルトの名無しさん:2007/01/08(月) 22:34:06
流石VBスレだな

943 :デフォルトの名無しさん:2007/01/08(月) 22:51:13
>>941
しかも、説教ジジイはファンネル使い。
IDでない事をいいことに、名無しで連投しまくり。

944 :デフォルトの名無しさん:2007/01/08(月) 22:53:51
TabPage に Dock.Fill の WebBrowser を追加しまして、マウスがのるとフォーカスを移したいのですが、
WebBrowser クラスにはマウスイベントが見当たりません。
次いで TabControl のマウスイベント等は、どうもツマミの部位にしか反応しません。
そこで、WebBrowser コントロールの上にマウスがのったかを検知したく思うのですが、なにぶん知恵不足です。
どなかた知恵をかしていただけないでしょうか。

945 :デフォルトの名無しさん:2007/01/08(月) 23:09:52
>>861に4つ目追加w

ここは、質問者に説教するスレではありません。
ここは、質問者のプログラミングセンスを測るスレではありません。
ここは、質問者のプログラマ適性を診断するスレではありません。
ここは、質問者の精神病・神経症を診断するスレではありません。


946 :デフォルトの名無しさん:2007/01/08(月) 23:19:23
しかし本当自分の言葉を自分に適用できない馬鹿が多い。
他人に説教するのはケシカラン、と「偉そうに」他人に説教している自分には
気が付かないのか、自分だけは特別だと思うジャイアニズムなのか。

>>945
だからそんなの無意味だっての。
だって俺はそんなものに合意した覚えないから。
個人的に合意できなくても何らかの合意形成を経由したルールなら尊重しもするが、
どこの馬の骨か知らん奴の俺様ルールじゃあね。

>>944
>WebBrowser クラスにはマウスイベントが見当たりません。
WebBrowser コントロールって使ったことないからトンチンカンかもしれないけど
普通にあるみたいですけど
http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.webbrowser_members(VS.80).aspx

947 :デフォルトの名無しさん:2007/01/08(月) 23:21:46
ん、すまんよく見るとやっぱり非サポートみたいだね。。。
変なの。

948 :デフォルトの名無しさん:2007/01/08(月) 23:21:51
>>945
合意します。

949 :デフォルトの名無しさん:2007/01/08(月) 23:35:36
>>944
そのタブに切り替わったときにフォーカスを移せばいいんじゃね?

950 :デフォルトの名無しさん:2007/01/08(月) 23:48:47
>>944
馬鹿にされがちなやり方だけど愚直にタイマつかってポーリングするのが
一番簡単だと思う。エレガントでは全然ないが。

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim rect As Rectangle

With WebBrowser1
rect = .RectangleToScreen(.ClientRectangle)
If rect.Contains(Control.MousePosition) Then
.Focus()
End If
End With
End Sub


951 :デフォルトの名無しさん:2007/01/09(火) 00:06:53
>>946-947
なんなんだ。お前の存在は。
どこかでひっそりと一人で死んでくれ。

952 :デフォルトの名無しさん:2007/01/09(火) 00:22:44
http://sylphys.ddo.jp/upld2nd/phone3/ftp-box/img20070106025644.jpg
これが小学6年生の雑誌に掲載されてたっていうんだからもうなんでもアリなんだよきっと

953 :デフォルトの名無しさん:2007/01/09(火) 01:10:37
>>952
ん?それ小学5年生の雑誌だよ。

954 :デフォルトの名無しさん:2007/01/09(火) 01:33:15
隠してもどうせヤルんだから
ゴムのつけ方くらい教えたほうがいいでしょ

955 :デフォルトの名無しさん:2007/01/09(火) 01:58:37
>>946
> 他人に説教するのはケシカラン、と「偉そうに」他人に説教している自分には
> 気が付かないのか、自分だけは特別だと思うジャイアニズムなのか。

と「偉そうに」他人に説教している自分には
気づかないのか、自分だけは特別だと思うジャイアニズムなのか。


こんな再帰文章書く奴って、ほんとに頭おかしいね。
お前の頭、無限ループでメモリ不足じゃね?



> しかし本当自分の言葉を自分に適用できない馬鹿が多い。

この文章好きだね、決め台詞のつもり?www

で も 、 そ れ お 前 の こ と で す か ら w w w

自分の言葉を適用できていたら、

> 他人に説教するのはケシカラン、と「偉そうに」他人に説教している自分には
> 気が付かないのか、自分だけは特別だと思うジャイアニズムなのか。

この2行は絶対に書けない。

956 :デフォルトの名無しさん:2007/01/09(火) 03:10:48
偉そうに

957 :デフォルトの名無しさん:2007/01/10(水) 10:41:42
ここでいいのかな?スレ違いなら指摘たのんます。

で、すまないが誰か知ってるやついたら情報くれないか?

WinXPSP2
.NET FrameWork2.0

の環境下でPostgresSQLに接続する為にNpgSqlを使用しようと思っているんだが
以前、1.1時代はDLLのインストーラーがあったと思うんだ
2.0にはないんだろうか?
Zipで圧縮してあるライブラリはあったんだが
コレだと直接参照しないといけないしなぁ・・・
というわけで、知ってる人いたらおねがいします。

958 :デフォルトの名無しさん:2007/01/10(水) 10:56:37
textboxが10個あって、それらを保存と、またそれらを開きたいのですが
わかりません。
参考書には1個のやり方しかのってないので複数個の保存、開く方法
教えてください。

959 :958:2007/01/10(水) 11:03:15
ちなみに1個保存と開くプログラムはこれでやりました。

Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button14.Click
With SaveFileDialog1
.RestoreDirectory = True
.OverwritePrompt = True
.Filter = "すべてのファイル(*.*)|*.*|テキストファイル(*.txt)|*.txt"
.FilterIndex = 2
If .ShowDialog = DialogResult.OK Then
If System.IO.Path.GetExtension(.FileName) = ".txt" Then
Dim sw As New System.IO.StreamWriter(.FileName, False, System.Text.Encoding.Default)
sw.Write(TextBox1.Text)
sw.Close()
Else
MessageBox.Show("拡張子はtxtにしてください", "エラー")
Exit Sub
End If
End If
End With
End Sub

ボタン14が保存です

960 :958:2007/01/10(水) 11:04:27
開くです

Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click
With OpenFileDialog1
.CheckFileExists = True
.RestoreDirectory = True
.Filter = "すべてのファイル(*.*)|*.*|テキストファイル(*.txt)|*.txt"
.FilterIndex = 2
If .ShowDialog = DialogResult.OK Then
If System.IO.Path.GetExtension(.FileName) = ".txt" Then
Dim sr As New System.IO.StreamReader(.FileName, System.Text.Encoding.Default)
TextBox1.Text = sr.ReadToEnd
sr.Close()
Else
MessageBox.Show("テキストファイルを指定してください", "エラー")
Exit Sub
End If
End If
End With
End Sub

ボタン15は開くです。

961 :デフォルトの名無しさん:2007/01/10(水) 11:09:47
コードの意味が分かってればそんな質問はしないと思うが

962 :958:2007/01/10(水) 11:14:01
すんません、意味はわからないです;;
参考書ほぼ丸写し・・・・

963 :デフォルトの名無しさん:2007/01/10(水) 11:21:11
複数個のテキストボックスを1アクションで保存/読み込みしたいのか?
それとも各テキストボックスに保存/読み込みボタンをつくりたいのか?




964 :958:2007/01/10(水) 11:23:31
複数個のテキストをボタンひとつクリックするだけで全部保存したいのです。

965 :デフォルトの名無しさん:2007/01/10(水) 11:42:47
そもそも「テキストボックスを保存」てのが何だかなー
「テキストボックスの値をファイルに保存」なら意味分かるんだけど…

966 :958:2007/01/10(水) 11:54:31
>>965
まさしくそのとおりです
テキストボックスの値をファイルに保存です;;

967 :デフォルトの名無しさん:2007/01/10(水) 11:59:23
>>966
ではそのようにせよ。

968 :958:2007/01/10(水) 12:02:53
textbox1~10を書いてもうまくいかなかったのでここに質問したのです。
どこが悪いのかわからなくて・・・・


969 :デフォルトの名無しさん:2007/01/10(水) 12:10:26
>>958
もうサンプル作ったからこれみて考えてみ
ザックリしかやってない手抜きだけど
あくまでひとつの提案なだけで方法はこれひとつじゃないから後は考えろ

フォームにTextBoを4つ
Buttonを2つはっつけるだけ
ttp://read.kir.jp/file/read65409.txt

970 :デフォルトの名無しさん:2007/01/10(水) 14:06:45
長々と長文貼って何様のつもりだ?

971 :デフォルトの名無しさん:2007/01/10(水) 14:38:16
>>970
俺様じゃね?w

972 :デフォルトの名無しさん:2007/01/10(水) 15:43:12
このスレ大量のコードを直接張る奴が多すぎ

973 :デフォルトの名無しさん:2007/01/10(水) 17:09:56
まぁそれが必死さの表れなのか?
そして、そういうやつはどれもクソコードとか初心者なわけで・・・
その前にマナーを学べと 子100時間ほど・・・

974 :デフォルトの名無しさん:2007/01/10(水) 23:29:05
初心者とかの問題じゃなくて、ただ単に学校の課題をここのやつらにやらせてるだけ。
本人は覚える気まったくないし。

975 :デフォルトの名無しさん:2007/01/11(木) 02:27:04
メソッドなのにインテリセンスが、( )を付けてくれないことがあります。
ふざけるのも大概にしてください。

976 :デフォルトの名無しさん:2007/01/11(木) 10:22:48
>>975
ふざけるのも大概にしてください。

977 :デフォルトの名無しさん:2007/01/11(木) 11:48:07
>>975
[INFO] New キーワードを使用した際にかっこが削除される場合がある
http://support.microsoft.com/default.aspx?scid=kb%3bja%3b828190


978 :デフォルトの名無しさん:2007/01/12(金) 00:18:55
Excel VBAのAppActivateってのはVB2005で使えんの?

979 :デフォルトの名無しさん:2007/01/12(金) 00:41:10
タブコントロールで、現在選択されているタブが
どのタブなのかは、どうやって判断すればよいのですか?
教えてください。

980 :デフォルトの名無しさん:2007/01/12(金) 00:48:30
ヘルプでメンバの一覧に目を通すぐらいはしようよ

981 :デフォルトの名無しさん:2007/01/12(金) 01:08:18
超初心者なのでよく分りません・・・

982 :デフォルトの名無しさん:2007/01/12(金) 01:18:53
TabControl.SelectedTab プロパティ
これでわからなかったら,なんとなく触ってても時間の無駄だから
まず言語の勉強をしっかりやった方がいいよ

983 :デフォルトの名無しさん:2007/01/12(金) 11:49:16
VB.NET 2003で作成したexeがあるのですが
それをソースの戻すツールがあるらしいのですが
戻せないようにするにはどうしたらいいでしょうか?

984 :デフォルトの名無しさん:2007/01/12(金) 11:55:55
そんなツールあったの?知らなかった・・・

985 :デフォルトの名無しさん:2007/01/12(金) 12:06:06
Dotfuscator
vs2003についてるが。

986 :デフォルトの名無しさん:2007/01/12(金) 12:07:02
あ、ちなみに戻せなくするのではなく難読化するもの。

987 :デフォルトの名無しさん:2007/01/12(金) 12:08:04
>>984
Reflector
めちゃくちゃ有名なんだが。

988 :デフォルトの名無しさん:2007/01/12(金) 12:12:28
>>983 = >>825
とみた

989 :デフォルトの名無しさん:2007/01/12(金) 12:16:29
VC#のプロジェクトをVB(2005)に簡単に変換する方法てありますか?

990 :デフォルトの名無しさん:2007/01/12(金) 12:30:25
>>989
Reflector
つかえ

991 :デフォルトの名無しさん:2007/01/12(金) 13:04:30
>>990
Reflectorで簡単に変換までできたっけ?

992 :デフォルトの名無しさん:2007/01/12(金) 15:02:40
>>983
netz

993 :デフォルトの名無しさん:2007/01/12(金) 15:11:20
>>988
違うお

994 :デフォルトの名無しさん:2007/01/12(金) 15:18:11
>>991
やさしーくおしえてあげよう。
http://www.denisbauer.com/NETTools/FileDisassembler.aspx
こっから、ReflectorのプラグインDLLをDLし、Reflectorに登録する。
Reflectorに変換したいEXEなりDLLなりのアセンブリを読み込んで、
そのアセンブリの一番親(青白いアイコン)のノード選択状態にしたら、
メニューの「Tools」→「File Disassembler」をクリックすると、右側に
ウィンドウがでてくる。
そしたら、そいつがWindowsアプリなのか、クラスライブラリなのか、コンソールアプリ
なのかを「Project Type」で選択後、吐き出したいフォルダを設定して、「Generate」ボタンを
クリックすれば、ソースファイルが吐き出される。
また、吐き出す言語はメニューの真ん中らへんにコンボボックスがあるのでそこで切替る。

995 :デフォルトの名無しさん:2007/01/12(金) 15:22:15
C#のソースをいったんコンパイルし、DLLなりEXEなりを生成しReflectorに
読み込んで、VB.NETソースを吐き出すというかたちとなる。
あくまでも機械的にへんかんしているから、吐き出されたソースファイルは
素直にコンパイルエラーを吐いてくれる。(素直じゃない場合もある)

996 :デフォルトの名無しさん:2007/01/12(金) 15:41:47
>>994,995
2chが閉鎖されるというのにも関わらず、丁寧な回答 thx!
これから試してみます

997 :デフォルトの名無しさん:2007/01/12(金) 15:44:14
2chが閉鎖されたら困るなー

998 :996:2007/01/12(金) 15:51:15
>>995
うまくできました。
今週で 2chは閉鎖らしいですが、他にもこんな便利な掲示板があればなあwww

999 :デフォルトの名無しさん:2007/01/12(金) 15:53:58
2chが閉鎖される前に次スレ立てれ

1000 :デフォルトの名無しさん:2007/01/12(金) 15:54:33
1000なら2ch終了

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

274 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)