1 名前:デフォルトの名無しさん [2007/04/23(月) 12:42:36 ] 前スレ VB.NET質問スレ (Part20) pc11.2ch.net/test/read.cgi/tech/1173061176/ テンプレは2〜10くらいまでの間にある予定
73 名前:デフォルトの名無しさん mailto:sage [2007/05/01(火) 19:45:37 ] System.Drawing あたり見てみるといいんちゃう?
74 名前:72 mailto:saage [2007/05/01(火) 19:52:09 ] >>73 どうもありがとうございます。vb drawingで検索したところ、 そのものずばりのURLがでてきました。実はサムネイル画像をつくりたかったんですが その作り方がかいてあります・・www.atmarkit.co.jp/fdotnet/dotnettips/559thumbnail/thumbnail.html どうもありがとうございました。助かりました。
75 名前:デフォルトの名無しさん mailto:sage [2007/05/01(火) 21:16:46 ] HEX()やOCT()みたいな関数で2進数に変換してくれる関数は存在しないのでしょうか?
76 名前:デフォルトの名無しさん mailto:sage [2007/05/01(火) 21:33:10 ] Convert.ToStringつかいなされ
77 名前:デフォルトの名無しさん [2007/05/01(火) 21:57:00 ] ASPとCOMでHTTP通信のReadとかWriteとかあるんだけど、 送信は好きな時に送ればいいけど、受信はイベントでも発生するの??
78 名前:デフォルトの名無しさん mailto:sage [2007/05/01(火) 21:59:25 ] すごい前衛的な日本語の使い方だなw
79 名前:デフォルトの名無しさん mailto:sage [2007/05/01(火) 22:11:31 ] >>76 ありがとございます。 これって0000-0000みたいに出力のフォーマットを指定することはできませんか?
80 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 01:15:30 ] >>79 一例をあげると string.format("0000-0000") これじゃね? もちろんほかにも色々あるけど、簡単なのはこれかな
81 名前:80 mailto:sage [2007/05/02(水) 01:16:34 ] 間違えたwww convert.tostring(""0000-0000"") まぁオーバーロード一覧見てみればいいよ
82 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 08:18:06 ] 恥ずかしい奴だなw それって単なる0のプレースホールドしてるだけじゃないのか? >>75 をよく見ろよ
83 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 09:15:12 ] >>82 あ〜>>79 だけ見てた 指摘トン
84 名前:デフォルトの名無しさん [2007/05/02(水) 21:46:05 ] >>77 レスありがとうございます。 で本題の方は・・・
85 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 17:09:28 ] VB2005で質問です。 win32 APIを使って他のWindowにアクセスするプログラムを作りましたが、 終了してもプロセスが残ったままになります。 アンマネージリソースの開放(?)とかが必要なのでしょうか。 もし、必要ならば具体的にどうすれば良いのでしょうか?
86 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 17:25:21 ] プログラミングなんてやめてしまう、が正解。 たぶん才能ないし向いてないんだよ。 そんな質問の仕方をするようではね。
87 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 17:36:20 ] Application.Exit
88 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 17:54:24 ] 解放でしょ
89 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 18:15:14 ] >>85 です。 解放ですね。。。。 Application.Exit とか Dispose() とかも試してますが上手くいかないです。 VS2005のデバックモードでは何も問題ないです。(これは当然か。。)
90 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 21:53:07 ] >>86 ここに来る四角が無いw
91 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 22:03:29 ] >>89 スレッドが残ったりしてない?Environment.Exit でどう?
92 名前:デフォルトの名無しさん mailto:sage [2007/05/03(木) 23:55:59 ] せめてこうすればよくわかるとは思うんだが なにも想像がつかない VB2005で質問です。 win32 APIの”A”を使って他の”Bにアクセスするプログラムを作りましたが、 ”C”のような手順で終了しても”Dの”プロセスが残ったままになります。 アンマネージリソースの開放(?)とかが必要なのでしょうか。 もし、必要ならば具体的にどうすれば良いのでしょうか? Aは使っているAPI Bは外部のプログラムだろうけど呼び出しはどうしているのかなど(Shellで起動させた.Netのアプリ など) Cは何をどのように終了させているか Dは対象となるプログラム(Bプログラムなのか、そのAPIを使っているプログラム自身なのか) べつに、こういう書き方が正しいわけじゃないけど できるだけ詳しく書かないとエスパーじゃないんだし 叩かれるだけだぜ? まぁ、>>89 の状況から察するに自身のプロセスだろうけど とりあえず終了するとき、ほかのWindowのインスタンスが残ってないかとか いろいろあると思うんだけどな でもなんとなく・・・・>>91 の予感がする
93 名前:70 mailto:sage [2007/05/04(金) 00:19:41 ] >>71 遅レスすいません。 おかげさまでできました... 教えて頂いてありがとうございました。
94 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 01:49:46 ] >>85 です。 >>91 さんのご指摘通りですっきりしました。 ありがとう。 Environment.Exit って知りませんでした。 大半の時間を【System.Threading.Thread.Sleep】している お遊びプログラムなので、win32APIではなく、sleep中に 終了させてしまったということなのでしょうかね。 おかげさまで、デバッカと離すことが出来ますので良しとします。
95 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 02:01:02 ] なんじゃそりゃ
96 名前:デフォルトの名無しさん [2007/05/04(金) 02:19:15 ] どっちにしろ>>94 はPGとしてカスだな 知らないなら機能を調べてから使えよ そのソフトの修正やバグ取りで尻拭いする人間のことを考えろ Application.ExitとEnvironment.Exitの違いもどうせ調べてなさそうだし
97 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 02:20:32 ] 趣味グラマなんでしょ
98 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 02:32:43 ] 納得してしまった
99 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 10:00:07 ] すいません。全くの初心者ですが質問させてください。 何故VB.netのスレのテンプレのリンク先がC#ばっかりなんですか?
100 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 12:35:10 ] >>99 死ねカスが 100年ROMって勉強してから聞け
101 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 14:39:49 ] >>100 99じゃないけど、カス厨うざいよ。
102 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 22:04:15 ] 超質問、これからVista用プログラム作りたいのだけど Vistaのアカウント制御オン状態でコードサインが無いと実行するか毎回聞かれて ウザいんだけど、作成したプログラムを配布するとしてどこからサインもらおう? シェアウェア製作者とかどうしてるんだろう?
103 名前:デフォルトの名無しさん mailto:sage [2007/05/05(土) 18:47:36 ] VB.NET2005の いくつかボタンがあるフォームの Form Availableイベントに Button2.Focus() を書いてもフォームが表示されたときにボタン2にフォーカスがいかないのはバグ?
104 名前:デフォルトの名無しさん mailto:sage [2007/05/05(土) 19:10:22 ] >>103 Availableイベントなんて無いぞ。 たぶんActivatedのことだと思うが、そのときのCanFocusプロパティはFalseだから仕様だ。 Select()するかShownイベントでFocus()しろ。
105 名前:デフォルトの名無しさん mailto:sage [2007/05/05(土) 19:33:30 ] そうActivatedだった
106 名前:デフォルトの名無しさん mailto:sage [2007/05/05(土) 19:54:05 ] MSDNライブラリのFormメンバ説明で Shown フォームが初めて表示されるたびに発生します。 初めて、という言葉と、たびに、という言葉があるが結局どういうことなんだ?
107 名前:デフォルトの名無しさん mailto:sage [2007/05/05(土) 23:15:05 ] >>106 いや・・・そのままだと思うんだが・・・・・
108 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 00:07:50 ] (((Shown フォームが初めて表示される)*n)たびに)発生します。
109 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 01:20:02 ] 初めては1回しかないのに たびは何回もということであり
110 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 02:05:57 ] ここは日本語の解釈を質疑応答するスレになりました
111 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 02:25:59 ] つーか解説読めばわかるだろ
112 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 02:33:58 ] 在日なんだろ?w
113 名前:デフォルトの名無しさん [2007/05/06(日) 04:34:17 ] VB初心者ですが、以下の件に関し教えて下さい。 テキストボックスで数字を小数点以下3桁表示にするには どのような方法があるのでしょうか? また小数点をチェックする方法はどのように行えばよろしいのでしょうか? (誤入力で小数点が2つ入力されるのを防止するため)
114 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 04:47:13 ] TextBox じゃないとダメなのか? NumericUpDown とか
115 名前:デフォルトの名無しさん [2007/05/06(日) 12:13:15 ] >>114 可能であればテキストボックスが良いのですが・・・
116 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 13:15:18 ] 1文字以上の数値の後 小数点があるかどうかチェックし、あれば以降の小数点はうけつけない また、小数点がある場合以降3ケタしか許さない とりあえずこのロジックをテキストボックスのチェンジイベントにでもいれてみれば? これも実装できないんならちょっとそれ以前の問題かと…・ 指定された文字があるかどうかは instrでもつかえばいいっしょ
117 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 13:19:42 ] あぁ、VB6と間違えてたw 折角だからこっちのがイイ罠 string.substring
118 名前:デフォルトの名無しさん [2007/05/07(月) 11:17:09 ] フォントにはBold Italic が選択できるフォントと Boldしかないようなフォントがあると思いますが これを判別するにはどのようにすればいいんでしょうか?
119 名前:デフォルトの名無しさん [2007/05/09(水) 11:06:43 ] VB2005Expressを使ってます。よろしくお願いします。 dobon.net/vb/dotnet/programing/registrysettingsprovider.html ここを読んでいて思ったのですが、「設定プロバイダの自作」というのを行えば My.Settingsで設定ファイルが保存される場所を、実行ファイルがあるフォルダ内 などに変更できるでしょうか?全然検討違いなことを言ってるでしょうか?
120 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 21:10:04 ] できる。方向性は間違ってない。
121 名前:119 mailto:sage [2007/05/10(木) 09:42:35 ] >>120 ありがとうございます! きちんと勉強してみようと思います。
122 名前:デフォルトの名無しさん [2007/05/10(木) 15:11:54 ] ごめん、ふとおもったんだけど Windows.Formsにあるコントロールクラスの Controls.Remove(obj as control) についてです 例えば Form1のControlsにForm2のインスタンスが格納してあって Form1.Controls.Remove(Form2) てやったばあい、Form2のインスタンスは 明示的にDisposeで開放予約もなにもしなくてもRemove側とGCで勝手に開放してくれて こっちはその辺の処理は考えなくていいんでしょうか? その辺の挙動がわからない・・・・
123 名前:デフォルトの名無しさん [2007/05/10(木) 16:30:36 ] Controlsは単なる集合だから、そこから削除されても別に関係ないと思うが。 結果、誰も参照無くなってGCの対象になるかもしれないが。
124 名前:デフォルトの名無しさん [2007/05/10(木) 18:08:15 ] 初心者です。質問させてください WEBサービス内でタイマーコントロールは使用できますでしょうか? WEBサービスの処理の中で定期的に行いたい処理があるのですが。 ご教授よろしくお願いします
125 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 22:05:16 ] なんかおかしくない?
126 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 08:33:27 ] VBでコンソールアプリ書いてタスクで実行させる方が簡単じゃない?
127 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 09:27:05 ] >>125 そんな気がするよな・・・・・ サービスじゃねぇのか とか思ったりするんだが・・・・・
128 名前:デフォルトの名無しさん [2007/05/11(金) 11:55:50 ] 2005でFlowLayoutPanelに10KByteX20ほどの画像を2列X10行で表示させ、スクロールできるようにしているんですが スクロールする時に画像が綺麗にスクロールされず 見た目が悪くなっています。 なんかスクロール中に引き伸ばされたような感じになり、スクロールをやめるとすぐに正常に表示されます。 貼り付けたフォームのダブルバッファのOn Offは試しましたが効果がないような気がします。 どなたか解決策をご存知の方いらっしゃいませんか? 説明不足・・・かもしれませんが よろしくお願い致します。
129 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 12:25:45 ] >>128 その文章じゃ、君がやってることもやりたいことも誰にも伝わらないと思う。 エスパーがいれば別だが。
130 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 13:08:13 ] 早くスクロールすると、再描画が間に合わずに 「スクロール中に引き伸ばされたような感じ」に描画されてるんじゃ ないかと受信した。 解決策: PCを買い換える。
131 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 13:08:36 ] うわぁぁ × 早く ○ 速く
132 名前:デフォルトの名無しさん [2007/05/11(金) 13:18:55 ] >>129 ごめんなさい 説明がうまくできずにごめんなさい >>130 そのとおりなんです で、早くするというか スクロールバーをドラッグして引っ張ると ゆっくりでも引き伸ばされたような感じになってしまいます。 PC買い替えは・・・ちょっと無理だと思います(;´Д`) まぁ、開発側でもそれなりになるのでユーザー側でもそうなるんじゃないかって懸念があるので ソフト側で出来る限りその減少を押さえ込みたいなと思いまして。
133 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 13:29:19 ] >>128 ●グラボ買い換える Or ドライバを最新にする ●DataGridView使う 以上適当に言ってみますた
134 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 14:15:18 ] >>133 やっぱそんな感じになりますか(;´Д`) まぁ、最悪時間かけてグリッドにでも展開するかなんかしたほうがいいのかもしれませんね・・・
135 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 04:03:03 ] >>134 うちではそんな現象にならないけど。 画像が重いんじゃねーの?
136 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 19:55:53 ] 昔Access2000のVBAでできあいのアプリをいじったことある程度の者です。 先日思い立ってフリーになったというVisual Basic2005をインストールしました。 (はじめどこから落とすのかまるで見当つかなかった…) で、フォームの開き方やIsNull関数の仕様の変更につまづきながらもなんとか目的のおもちゃは出来ました。 が、何も考えずプロジェクト名をWindowsApplication1で保存してしまって、そのまま発行したら インストール時のアプリケーション名がWindowsApplication1になってしまいました。 そもそもこんなおもちゃ、setup.exeからインストールするような形態で配布するようなもんじゃないし…。 というわけで3つ質問があります 1.上記のようにsetup.exeからインストールするのではなく、普通のフリーソフトのように zipから解凍すれば即使えるような形態にするにはどうすればよいでしょうか? 2.発行される実行ファイルに好きなアプリ名をつけるにはどうすればよいのでしょうか? 3.このアプリで作ったファイルを実行するには.NET Framework2.0必須でしょうか? 宜しくお願いします。
137 名前:デフォルトの名無しさん mailto:sage [2007/05/12(土) 21:14:40 ] そもそも発行する必要もない。
138 名前:デフォルトの名無しさん [2007/05/13(日) 00:24:02 ] その知識で作った「目的のおもちゃ」が何なのか知りたい。 1と2は入門書を見ればすぐに載ってる。バージョン管理の方法まで。 3→必須です。
139 名前:デフォルトの名無しさん mailto:sage [2007/05/13(日) 05:52:49 ] >>137 >>138 お答えをヒントになんとかわかりました。ありがとうございます。 まさかあんな奥底にこっそり作られてるとは思わなかった…。 名前もプロジェクトのプロパティだったとは。
140 名前:デフォルトの名無しさん [2007/05/13(日) 09:02:47 ] よろしくお願いします。2005 Expressを使ってます。 TabControlコンポーネントでタブの幅をぴったりにする方法がわかりません。 www.imgup.org/iup380282.gif Paddingプロパティで、ある程度は幅を広げられるのですが、ぴったりにはなりません。 SizeModeプロパティをFixedにすると、どこかにタブ幅を決めるところがあるのかと 思っても、見つかりません。 ぴったりにする方法をよろしくお願いします。
141 名前:デフォルトの名無しさん mailto:sage [2007/05/13(日) 10:21:56 ] >タブ幅を決めるところがあるのかと思っても、見つかりません。 見つからないのではなく、探す気がないだけでしょ。 TabControlメンバ一覧をよくみた方がいいよ。 人に教えられるより自分でみつけた方が気分いいでしょ
142 名前:デフォルトの名無しさん mailto:sage [2007/05/13(日) 11:34:09 ] プラグイン用インターフェイスで使用可能な型について教えてください。 プラグイン機能の開発を試みています。 プロパティでFontオブジェクトをやりとりしたいと考えていますが インターフェイスの記述で、System.DrawingがImportsできません。 どういった実現方法があるのか、教えてください。 Imports System.Drawing '←記述不可 Namespace Plugin Public Interface IPlugin ReadOnly Property MainFont() As Font '←で使用したい End Interface End Namespace VB2005stdです。よろしくお願いします。
143 名前:142 mailto:sage [2007/05/13(日) 11:45:20 ] >>142 自己解決しました。 参照設定すればOKでした。
144 名前:デフォルトの名無しさん [2007/05/13(日) 22:30:23 ] VB2005を使っているのですが フォームに様々な多角形や枠付線を描写する場合 PictureBox貼り付けてそれをイベントの方で各点のxy座標を指定して変形させて描写するしかないんでしょうか? 画面に対して縦横のラインが直角や平行ならいいんですが、斜め45C以外に書いたりする複雑な図形があるので少し手間取っています あれだけボタンなどのアイテムがあるのならペイント系のアイテムもあってもよさそうなんですが、そういったものは存在しないんでしょうか? どうかご助言の方をよろしくお願いいたします。
145 名前:デフォルトの名無しさん mailto:sage [2007/05/13(日) 22:43:05 ] 何を求めてるのかさっぱり分からん 取りあえず開発環境はお絵かきソフトじゃないぜ?
146 名前:デフォルトの名無しさん mailto:sage [2007/05/13(日) 23:54:49 ] 簡潔にいうとフォームに手軽に図形を描きたいという事です 現状はピクチャボックスを塗りつぶしてイベントのほうで描写をし直して 各点(四角形なら4点)の位置を調整して様々な図形に変形させているので各点の座標を調整するのに手間がかかってしまう・・。 普通に正方形だとピクチャボックスそのまんまの形でいいんですが ダイヤ型や、星型、Σみたいな形などの複雑な形になると各々の点の座標を修正しては実行して確認の繰り返しをやっています。 ペイントで画像描いて貼り付けようともしましたが各図形の色を変更させたりしたいのでその枚数分を使うとなるとプログラム的に大きくなりそうなので自分で描写した方がいいのかなという結論に至りました。 こういう図形を描写しそれの色を変更などをしたいプログラムを作成する場合はどういった方法が一般的なのでしょうか? こういったプログラムを作成されている方が折られましたら是非助言をお願いしたいです・・・よろしくお願いします。
147 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:01:17 ] Graphicsクラスを使用しています↑
148 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:04:15 ] 正直、そんなこともできんのならプログラマなんてやらん方がいいと思うわ。。
149 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:05:46 ] 誰だって初心者の時期はあるだろ
150 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:14:34 ] いや初心者だからわからんとかそんな次元じゃないな。 考える力が決定的に掛けているか、そうでなければ算数レベルの数学能力すら ままならんのだろう。 いずれにしろプログラマとしては致命的だな。
151 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:23:43 ] >>150 どこで数学能力使う?
152 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:27:25 ] >>147-151 Graphicsクラスで初心者云々ということならよりもっと簡単な別な方法があるということでしょうか?
153 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:40:51 ] そうじゃなくて、その程度の思考力がないなら プログラミング以前の問題があるだろうという話。
154 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:52:53 ] 思考力ですか? >>146 の描写方法の考え方がおかしいということでしょうか
155 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 00:58:21 ] Graphics以外での描写方法を知りたいんなら思考力も計算能力もまったく関係ない気がするだけど
156 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 01:02:03 ] とりあえず つpolygon
157 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 01:02:44 ] >ダイヤ型や、星型、Σみたいな形などの複雑な形になると各々の点の座標を修正しては実行して確認の繰り返しをやっています。 方眼紙に書いてからやればいいじゃね?
158 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 02:09:22 ] >>150 おまえアホだな。 >>146 が職業プログラマとは限らんし、プログラムにわからない事があるだけで 自分の資質なんて考えちゃいないだろ。 中学〜高校と英語を勉強してきた普通の人たちが簡単な英語の翻訳を質問したら 「お前は通訳としては致命的だな」なんてコメントするか?
159 名前:デフォルトの名無しさん [2007/05/14(月) 07:17:21 ] >>158 がいいこと言った!
160 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 07:27:29 ] >>158 ウンコ触るな
161 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 09:43:30 ] どういうプログラムなのかが気になる。 お絵かきソフトもどきを作るのではなくて、あらかじめ決まった数種類の図形をボタンのクリックや タイマーなどのイベントで色を変えたり図形を変えたりしたいということかな? 座標の指定は手作業しかないんじゃ? あとは156に言った多角形を書くpolygonとか。多角形を塗りつぶすFillPolygonとか。
162 名前:デフォルトの名無しさん [2007/05/14(月) 09:58:56 ] つうかもう固定で描画するなら画像はっつけろよwwwwww
163 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 12:40:32 ] >>158 日本語書けよ。 あのねえ、プログラミング(に限らないが)には「知識や経験」だけでなく ある程度の「資質」が必要とされるんだよ。当たり前だろ。 単に知識や経験が不足しているのなら学習して補っていけば済む。 ここがそういう場所であることには俺は異論はないよ。 でも資質が欠けていたらどうしようもないよ。 何やったって最初から無駄。 155cm43kgの奴が相撲取り目指すようなもんで、本人にとっても不幸なだけだろ。 もちろんそれでもどうしてもやりたいんだ、っていうのなら別に勝手にすれば。 でも>>146 みたいなこと聞いてるようじゃ何ひとつまともなプログラムなんて 書けるようにならないことは俺が請け負うよ。
164 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 12:46:34 ] すみません、返答遅れました >>155-162 レスありがとうございます。 >>156 Polygonですか? どういったものか調べてみたいと思います。 >>161 >あらかじめ決まった数種類の図形をボタンのクリックや >タイマーなどのイベントで色を変えたり図形を変えたりしたいということかな? 簡単に言うとそういうことになります それと図形の位置の調整はやはり座標を手作業でしかないんですね、分かりました 例えば多角形の場合、実際にコードを実行して描写を確認しないといけないので、そこに便利な方法が無いのかと疑問に思っていました。 >>162 確かに画像を貼り付けた方がフォーム上で簡単に位置を修正したりできるのですが 何分図形の数が多いので数*色数で大体で言うと100枚前後の画像が必要になってくるのですが フォームにそれだけのピクチャボックスを乗せるとなるとやはり処理や動作に支障をきたすのではないのでしょうか
165 名前:デフォルトの名無しさん [2007/05/14(月) 12:48:47 ] 画像をファイルにしといてLOADすればよかんべ。 せめて、入門本ぐらいは読もうよ。 仕事でめったに使わない画像の読み込みとか出てるから。
166 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 12:54:18 ] まぁ背景色の変更はソリッドとかであれば結構簡単に出来るから画像でもいいならそれも可能かと・・・ ただ、それを拡大縮小になってくると微妙だけど(;´Д`)
167 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 12:58:42 ] 他人に配布するかしないかにもよるけどなぁ。 フォームに百枚のピクチャーボックス??なんでその必要が? >>165 の言うとおりです。 例えばだけど、 一つのフォルダにまあ百枚なら百枚の図形を入れて、フォームロード 時に配列かなにかにそのパスを入れて、PictureBoxのImage.FromFile で画像を切り替えればいいんじゃない?
168 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 13:01:04 ] 100枚配布するのが嫌ならリソースにつっこんどけ ちなみにこの方法のメリットはプログラムを直さずに画像の差し替えで対応できるという点 とうぜん変更勝手にされちゃうとかのデメリットもあるが・・・
169 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 13:21:01 ] >>165-168 ひとつのピクチャーボックスに代わり代わりで画像を読み込ませればいいという説明でしょうか? それでしたらすみません、説明不足でした 100枚というのはひとつのピクチャーボックスに100枚の画像を入れ替えて表示するのではなく フォームに位置が違う100箇所ぐらいのピクチャーボックスを配置してそこに画像を読み込ませてそれぞれ色を変化させたりして表示するということです。 100枚同時に表示させる必要があるんです。 色を変える場合はピクチャーボックスの中身の画像を色が違う画像とすりかえればいいのですが・・そういうことですよね?
170 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 13:23:44 ] あ、それとも 必要毎にフォルダから画像を読み込ませるということでしょうか そういうやり方だと負担が減るのかな
171 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 13:49:23 ] 1フォームに画像が100個程度あるってことでFA? で、それらは同時に色が変わったりするの? それとも個別に色が変わったりするのかな? その辺の動作周りをもう少しkwsk
172 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 13:54:47 ] >>171 説明ということで書いていたので100まではないんですが大よそで60前後の様々な形の画像を表示させるつもりです 色は同時に変わったり、個別に変わりもします・・要するに個別ということですよね;
173 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 13:55:45 ] 処理的に厳しいでしょうか;
174 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 13:59:09 ] 質問者は名前欄に最初のレス番号入れてけれ。どれがどれか分からん
175 名前:144 mailto:sage [2007/05/14(月) 14:08:12 ] そうですね、すみません・・
176 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 14:58:34 ] フォームに60個のピクチャーボックス?? それをコードで書く気なの?すごい…。そんなプログラム組みたくない…。 まあ、するのなら同じ図形で色だけ違う画像ファイルを1セットにするか、 コードで書いてbrushesを変えて色を変えるかだろうけど。色をランダムに 変えていいのなら、コードの方がいいかもな。 フォームに動きを加えるのはいいことだと思うけど、一体どんなプログラムで どんな人を対象に作ってるのか差し支えなければ教えてよ。
177 名前:デフォルトの名無しさん [2007/05/14(月) 15:28:18 ] まぁあ60個を同じ処理にするってのならハンドラちょこっといじればいけるだろうけど 出来れば想定する最低環境も知りたいところであったりもする つうか・・・勉強の為に60個のピクチャボックスフォームにのっけて画像表示させてみるってのテストしてみようw メモリは画像の大きさにもよるだろうけどさ・・・・
178 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 15:54:36 ] >>176-177 やはり珍しいケースなんですね 私自身もVB初心者だしどうなるか・・。 処理に関しては仮に作ったプログラムで確認したんですが Graphicsで図形作ったコードですと色買えなどの処理は関数を作ってやってあとは各々で読み出すだけで簡単にできました ただ処理以前に座標で指定する多角形を60個作るとなると位置調整で頭が痛くなりそうです・・。 画像の場合はまだよく分からないので未知数ですが とりあえず処理速度にしろ、作成方法にしろ色々教えていただいたことを試してみたいと思います。
179 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:02:07 ] >>178 > ただ処理以前に座標で指定する多角形を60個作るとなると位置調整で頭が痛くなりそうです・・。 前々から思っているんだが、ここがおかしいだろ。 一体何の調整がいるって言うんだ。
180 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:03:31 ] ちなみに一般的に有効にプログラミングをするとした場合 この例ですと Graphicsで画像を描写する方法と、画像を読み込んで表示させるのはどちらが効率的だと判断できるんでしょうか?
181 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:05:37 ] >>179 多角形が一つ一つ形が違うのでその形を形取るための多角形の頂点の座標の調整と それをフォームのどのあたりに表示させるかの座標の調整の二つです。
182 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:16:05 ] >>180 有効にって言葉も幅外広いからなぁ・・・ 何かを取れば何かを失う部分もあるし 画像でやれば画像作るのはめんどくさいけど 後々変更してくれとか言われた時にコーディング量は減るし(考え方によればコーディングすらも必要ない 画像の追加・変更だけでよい) 自分で書けば融通の利く処理が出来るがその分修正にソフトの書き替えが必要だし 俺なら 表示させるサイズが固定であればこの場合、画像を選ぶ 完全に動的サイズになるなら自分で書く かな?
183 名前:144 mailto:sage [2007/05/14(月) 16:23:14 ] >>182 なるほど・・・ だとしたら図形は色は変わりますがサイズは固定なので画像の方がいいかもしれませんね そもそもモニタ自体のサイズがまだ未定だったのでそこから決定していかないと画面座標でやってたらずれてしまいますね; 参考にさせていただきます、ありがとうございました。
184 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:25:53 ] >>183 あれだ、画像だけPNGとかで読み込んで背景色はバックグラウンドカラーという手もあるっちゃぁ・・あるとおもうんだ
185 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:28:03 ] 図形はベクタデータで持っとけば色変えたり拡大したりするのも簡単なんじゃねえの?
186 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:32:30 ] >>185 俺もそう思う けど、どうも質問者的に難しそうなので俺は簡単な実装方法を提案してみたさww
187 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:34:54 ] モニタの解像度依存でずれるとか言ってるし…… もうね……
188 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:39:44 ] ラベルに[m2]って書いて2の部分を上付けに指数表示にしたいんですがどうやればいいんすか?
189 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:40:43 ] >>150 がプログラマとしては致命的なのは分かったからすっこんでろ^^
190 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:42:46 ] いまさらそんな遠距離レスつけなくても^^
191 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:44:23 ] >>188 m² ㎡
192 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 16:56:43 ] >>190 に言ってるんだよ^^
193 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:10:17 ] 俺じゃねえよ^^
194 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:11:57 ] ばかまるだしだ・・・
195 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:12:06 ] そうやって書いたら[msup2;]っラベルのテキストに表示されるんですが…
196 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:15:18 ] それは書き方が悪いんだろ
197 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:20:18 ] >>193 墓穴掘らなくていいよ
198 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:22:43 ] ちゃんと>>191 のとおりにかいたよー
199 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:24:32 ] >>195 専ブラとかのコピペしてたら超笑えるwwwww へいほーめーとる で変換してラベルに入力しろや
200 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:27:52 ] へいほうめーとるで変換できるんかいー!うまくできたわみんなありがつ
201 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 17:32:50 ] い・・・一体なんだったんだ・・・・(;´∀`)
202 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 18:11:01 ] 2つのビットマップ(実際の画像と、モノクロのマスクパターン)を用意して透過処理を したいんですけど、VB.NETでどう実現するのやらさっぱりで。 VC++6.0とかで BitBlt 関数使って描画するのとかはやったことありますのでその程度の 知識ならあります。誰かヒントとなるリンクだけでもいいですから教えてください。 できれば VS2003、.NET Framework1.1 の環境下で動くのでお願いします。
203 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 18:17:26 ] Graphicsでアルファブレンド っつうのはどうっすか?
204 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 18:35:03 ] >>202 GDI+はPNGをサポートしてる。 ここまで言えばわかるよね?
205 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 18:36:46 ] ああでも遅いから速度が必要なら自分でBitBltでマスク処理した方がいいかもね。
206 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 18:38:21 ] もひとつ忘れた。 別にPNG使わなくても、GDI+には透過色を指定する機能もある。 まあしかし、自分でこれだけ答えておいてなんだけど、 少しはMSDNライブラリ読めよ。
207 名前:202 mailto:sage [2007/05/14(月) 18:52:36 ] >>203-206 レスありがとうございます。 とりあえずマスクパターンを使うのじゃないですけど、MakeTransparent ってので 透明とする色を指定することで対応はできました。 マスクはどうやんのかまださっぱりですけど。 MSDNは・・・読んでみたんですけど、どこに必要な情報があるのかすらたどり着かなくて。 申し訳ございません。 もう開発から設計に移って5年ぐらい経つんですが、 「過去に似た様な処理をVC++で作ったことがあるから」って理由で借り出されたものでして。 オジサンもう疲れたよ・・・orz
208 名前:デフォルトの名無しさん mailto:sage [2007/05/14(月) 19:01:53 ] >>207 ご苦労様w マスク処理は.NETネイティブの機能だけでやるのはきついと思う。 描画サーフィスをビットマップに転送する機能がGDI+にはないからね。 つまりWin32のBitBltつかって昔ながらの方法でやるしかない。
209 名前:202 mailto:sage [2007/05/14(月) 19:11:06 ] >>208 >つまりWin32のBitBltつかって昔ながらの方法でやるしかない。 そうですか。その情報だけでもありがたいです。ありがとうございます。 最近の小僧どもはゆとり教育のせいか、開発言語が複雑になりすぎたせいかで すぐに諦めて「できません」とかほざくもので・・・すみません、愚痴ですね。 今から自分の仕事やりますw
210 名前:デフォルトの名無しさん [2007/05/14(月) 19:18:28 ] >>209 みると俺の環境は恵まれてるんだなぁ・・・と痛感する
211 名前:デフォルトの名無しさん mailto:sage [2007/05/15(火) 07:42:55 ] できませんはただの報告だからいいんじゃないの? やりたくありませんと言ったら鉄拳制裁ものだが。
212 名前:デフォルトの名無しさん mailto:sage [2007/05/15(火) 09:51:44 ] >>211 出来るはずのものをできませんとかねーよ >>209 の例だと調べりゃこのスレでもでてた即いくつかの方法や代替案がでてくるだろう どれだけレベル低いんだよ 低いなら調べたなりに出来ない根拠や別の案があるけど、多分あの様子だとないんだろうな・・・
213 名前:デフォルトの名無しさん [2007/05/15(火) 10:41:50 ] Delphi製の、Pchar型の文字列を渡すとPchar型の文字列が返ってくるDLLを使いたいと思い、 DLLを使う方法までは調べたのですが、データ型としてPcharが使えません。 VB2005から、Pchar型を使うDLLを使用する方法は無いでしょうか?
214 名前:デフォルトの名無しさん mailto:sage [2007/05/15(火) 17:07:25 ] PCharいうたら短い文字列へのポインタだったか? Charset=Charset.ANSIを指定してDllImportすりゃいい。 型はStringBuilderだ。
215 名前:デフォルトの名無しさん mailto:sage [2007/05/15(火) 17:15:54 ] 渡す方はStringで、受けとるほうがStringBuilderだな。 一つの引数で上書きされるなら、StringBuilderか。
216 名前:213 mailto:sage [2007/05/15(火) 18:35:56 ] >>214-215 ありがとうございます! 教えていただいた単語を手掛かりに頑張ってみます。
217 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 16:06:05 ] インターフェースなんですが、Implementsを書いたあとにIntelliSense見たいに 実装を挿入することって出来ないのでしょうか? 実装しないでビルドするとエラーの説明で、実装すべきメソッドが表示されるので あっても良さそうなんですが。。。
218 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 16:14:19 ] 質問です。 ローカル上のIPアドレスからホスト名を取得しようとしています。 2.0だとDns.GetHostEntryを使うようにとあったので x = System.Net.Dns.GetHostEntry("**.**.**.**").HostName このようにしていました。 Win2k上では正常にホスト名を取得していたのですが、XP上ではIPアドレスしか取得できません。 Resolveを使うと取得できたのですが、旧形式だと警告されてしまいます。 他に取得する方法はないでしょうか? よろしくお願いします。
219 名前:デフォルトの名無しさん [2007/05/16(水) 18:02:39 ] VB2005でアプリ作りました。で、匿名で公開したいんですけど、 これどこかにコンピュータネームやWindowsのユーザーネームが埋め込まれてるってことはないですよね? わけわからずにClickOne使った時、勝手に上記が埋め込まれてたのでビクビクしています。 リソースハッカーでみた限りはないようなのですが。
220 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 18:02:42 ] >>217 できるよ 例えば 新しいクラスで implements idisposable○ ここでEnter押したらそのクラスの一番下に入ってないか?
221 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 18:03:35 ] >>218 新形式使えれ
222 名前:217 mailto:sage [2007/05/16(水) 18:52:59 ] >>220 ありがとうござます。 もう少しでスニペットで一個一個作るところでした。
223 名前:デフォルトの名無しさん [2007/05/16(水) 20:14:55 ] ファイルを解凍するときに 既にUNLAH32.DLLは動作中ですってエラーがでるのだけど UNLAH32.DLLを終了処理するには、どう記述したらいいですか?
224 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 20:32:39 ] うまく表現できないんだけど、必ず Public X as Single Public Y as Single の二つのフィールドを持つ値型、みたいな型の指定ってできないかな? もちろんインターフェイスを使えば近いことは可能なんだけど、 構造体の配列をストリーミング的に渡すような使い方をしたいので パフォーマンス的な理由でなるべくならインターフェイスは使いたくない。 こういう場合、やっぱり特定の型の構造体の配列をベタに引数に取るようにするしかないのかな。
225 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 20:33:25 ] 実行中のプロセスがあるからじゃないのか? プロセスみてみてKillすれば? つうか、動作中です って出てるのを終わらせるのは・・・あんまお勧めしないが? まぁどういうソフト組んでるかにもよるし・・・ 自分で1回UNLAH32.DLLをつかって解凍したあとの動作なのかな? もしそうじゃないとすれば、UNLAH32.DLLを使うようなソフトは? WindowをSafeモードで起動して 自分のソフトで解凍しようとしてもそうなるの?
226 名前:デフォルトの名無しさん [2007/05/16(水) 20:36:26 ] >>224 構造体でいいと思うんだけど・・・ 少なくとも俺はそうしてる C++なら別のやり方もあるけど・・・ そこまでパフォーマンスを気にするなら何か他のところで余裕で稼げそうな気がする
227 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 20:40:40 ] >>225 自分で1回UNLAH32.DLLをつかって解凍したあとの動作です。 開放処理する必要があるのでしょうか? その場合どう記述したらよいのか・・・
228 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 20:45:53 ] >>227 ということはアンマネージリソースが開放されてないんじゃないかと予想してみる 多分解凍が終わったら引数が帰ってくると思うんだけど・・・・ それがちゃんと出来てるなら MarshalクラスつかってComObjectかどうか調べて ReleaseComObject でキチンと開放してやってみてはどう?
229 名前:228 mailto:sage [2007/05/16(水) 20:48:06 ] ごめん、書き忘れ そういえば UnlhaGetrunning みたいな現在実行中かどうか調べる関数なかったっけ? 実際にやってる処理差し支えなければ書いてみれば きっと皆こたえてくれるような気がするけどw
230 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 21:02:33 ] >>229 'LHA書庫操作を行う Private Declare Function Unlha Lib "Unlha32" (ByVal hWnd As Integer, ByVal szCmdLine As String, ByVal szOutPut As String, ByVal dwsize As Integer) As Integer 'ファイルのダウンロード Internet.DownloadFile(URL1, FileName1) '書庫の解凍 Dim UnlhaLzhFile As String '書庫ファイル名 Dim UnlhaDir As String 'ファイルのパス Dim UnlhaFiles As String'ファイル(ワイルドカード指定可) Dim UnlhaSwitch As String '書庫操作命令 Dim UnlhaOptions As String '書庫操作スイッチ Dim UnlhaCommandString As String'Unlhaのコマンド Dim UnlhaRetunValue As Integer '書庫操作の結果戻り値 '各種パラメータの設定 UnlhaLzhFile = My.Settings.FilePath01 '"C:\お気に入り.lzh" UnlhaDir = "C:\Documents and Settings\My Documents\My eBooks\My eBooks\" UnlhaFiles = "" UnlhaSwitch = "x" UnlhaOptions = "" 'ファイル名の前後にダブルコーテーションを付加 UnlhaLzhFile = """" & UnlhaLzhFile & """" UnlhaFiles = """" & UnlhaFiles & """" UnlhaDir = """" & UnlhaDir & """" '各種パラメータの値を元にコマンドを作成 UnlhaCommandString = UnlhaSwitch & " " & UnlhaOptions & " " & UnlhaLzhFile & " " & UnlhaDir & " " & UnlhaFiles & " " UnlhaRetunValue = Unlha(0, UnlhaCommandString, Nothing, 0) '書庫操作を行う 解凍
231 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 21:27:21 ] >>226 やっぱりそれしかないのかな。。 値型用の(ボックス化されない)インターフェイスみたいなものがあっても いいように思うんだけど。
232 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 21:29:07 ] FreeLibrary()
233 名前:デフォルトの名無しさん [2007/05/16(水) 21:34:29 ] >>230 とりあえずウチの環境でVer2.55のDllつかって パスだけ変えて動かしたらちゃんと動いてるよ ソフトの中で同じ処理3回呼んだけど 問題なかった なにか止まっているとかじゃないかな? >>231 の呼んで開放してやるといいかも
234 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 23:00:57 ] 初歩的な質問ですがお願いします 参照設定で X を指定する これはソリューションエクスプローラの参照設定からX追加という作業でよろしいんでしょうか? これは何を意味しているのでしょうか?
235 名前:デフォルトの名無しさん [2007/05/16(水) 23:51:44 ] >>234 それでいいよ 意味するところは ある機能に特化した機能の塊を使えるようにする為 ざっくり言えば Formやボタンなんかが使えるのは使いやすいように最初から System.Windows.Form っていうクラスを参照している感じ
236 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:06:41 ] >>235 わかりやすい説明でありがとうございます
237 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:16:28 ] いやそれで納得しちゃダメだってw >>235 はImports文によって名前空間の「パスを通す」ことと プロジェクトのアセンブリの参照設定を混同してる。 234が言ってるのは前者。235が言ってるのは後者
238 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:17:26 ] すまん前者と後者が逆だな
239 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:26:18 ] msdn2.microsoft.com/ja-jp/library/h9st4tss (VS.80).aspx
240 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:28:53 ] コピペ君って馬鹿だな、まで読んだ。
241 名前:デフォルトの名無しさん [2007/05/17(木) 00:42:08 ] つうか 普通にラベルとテキストボックス30個くらい貼り付けたフォーム開いたら 奇麗に表示されないんだけどどうなのよ VB6で同じことやったら普通に開くのになぜドトネトのほうが遅いんだ?????
242 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:44:46 ] WindowsFormsはそんなもん
243 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:47:42 ] マジで??? Javaも大概重いと思ってたけどそれに同じくらい重いのな(´ヘ`;) P4 2.4Gでそれなりに重いからWin2000とかの昔のに入れたらもっと重い感じがするってことなのか…・ orz
244 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 01:04:34 ] ハリボテの表示が遅いだけで処理は遅くないぞ
245 名前:デフォルトの名無しさん [2007/05/17(木) 01:15:43 ] >>244 UIの描画とかが遅いだけってことなのか ちょっと安心したよ あの調子で全体遅かったらつかえねー とか思ってたんで フレームワークがJAVAみたいな資産に足引っ張られてgdgdにならないことを祈りつつ頑張って勉強してみるよ
246 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 01:22:53 ] まあどうせ WinForm は WPF にまるごと置き換え予定だしな 少なくともあと5年ぐらいは掛かるだろうけど
247 名前:デフォルトの名無しさん [2007/05/17(木) 01:23:58 ] 初心者なんですけど コンパイルするときに "cl ファイル名"でやると、 「"cl"は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチファイルとして認識されていません。」 ってでるんだけど"cl"じゃ駄目なの??
248 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 01:33:08 ] ここはVB.NETのスレですが・・・
249 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 07:55:59 ] vbc hoge.vb で幸せになれると思うよ。vjcでさらに・・・
250 名前:デフォルトの名無しさん [2007/05/17(木) 11:20:04 ] ttp://msdn.microsoft.com/library/en-us/shellcc/platform/shell/programmersguide/shell_adv/bands.asp?frame=true#desk_bands このタスクバーにアプリケーションを乗せたいんだけど、やり方がさっぱりなんだ。 どこから手を付けたらいいか教えてください。
251 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 11:57:01 ] 「幸せになれる」って言葉使うヤツきもい
252 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 12:02:58 ] >>250 アプリケーションを乗せるってのはグーグルツールバーみたいなアドインのこと??
253 名前:250 [2007/05/17(木) 12:11:03 ] >>252 Google Deskbarにみたいにです。 タスクバー右クリック->ツールバーで選択できるようにしたいのです。 機能は検索するとかそういうのを作りたいわけじゃないんですが、 まだタスクバーに作ったアプリを起動させることができないので。
254 名前:250 mailto:sage [2007/05/17(木) 12:18:13 ] DeskBandと言うらしいのですけど、そこからがわからない。
255 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 12:32:46 ] どっちかというとosの仕様に関する知識になるのかねえ。 こういう資料ってどこにあるんだろう。
256 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 13:15:31 ] >>250 BandObjectでぐぐれ
257 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 13:17:31 ] QTTabBarがやってるな。C#製らしいけど。 ってみてみたら>>256 を使ってるみたい
258 名前:デフォルトの名無しさん [2007/05/17(木) 15:45:47 ] BandObjectってC#なのか?VBじゃ使えんの?
259 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 15:47:35 ] 使えるだろ・・・・
260 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 00:01:57 ] ビルドでbinフォルダにEXE作るとして 他のフォルダのdllを読込む時、 binの中に勝手にdllがコピーされるので、 binのdllを削除したら 「依存関係の 1 つが読み込めませんでした」 というエラーになりました。 この状態でもdllの参照が可能になるには どうすれば良いでしょうか?
261 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 00:06:56 ] >>260 ドットネットフレームワークのDLLがどう登録されてるんだろうな? ほかのDLLはどこに登録されてるんだろうな? でも、基本的にそっちのが俺はいいと思うんだが…
262 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 00:11:29 ] なんでこう DLL を嫌がるんだろうね
263 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 00:13:23 ] >>260-261 日本語書けよ。 エスパー同士の会話か?w
264 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 03:42:50 ] >>260 無闇には勧めないがGACに登録。
265 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 04:15:46 ] 無闇じゃなくても薦めるなそんなの。
266 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 20:25:46 ] 初心者でまだテストコードも書いてないんですが、方針を教えてください Class A Inherits Base Function b() as string ・・・・ End Function End Class Class Base Function a() as string return b End function Function b() as string ・・・・ End Function End Class となっているときに、継承クラスであるAの関数aを呼び出したとき aはベースクラスbase.bを呼び出しますよね? このとき継承クラスAがオーバーライドした関数bを呼び出させる 方法はありますか? よろしくお願いします。
267 名前:266 mailto:sage [2007/05/19(土) 20:31:13 ] 追記 Base.a()は非常に複雑だけど一部だけ変更可能にしないと機能しない関数です。 そこでその部分を関数bで処理します。 ただし、Baseクラスの関数bにもベーシックな処理を記述しておきたいのです。 よろしくお願いします。 言語の基本仕様にないとしたらデザインパターンを使うのでしょうか? そのパターンの名前とか教えていただけるとありがたいです。
268 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 20:37:45 ] 普通にbを仮想関数にすりゃいいんでないの?
269 名前:266 mailto:sage [2007/05/19(土) 20:47:17 ] >>268 仮想関数ですね・・・調べてみます! とっかかりがわかんなくてデリゲートとかわけのわかんないのを調べてました。 base.bの宣言をOverridableにせよということですね? ありがとうございました!!!
270 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 21:06:35 ] >>266 あのさあ、学べば分かることを学びもせず、 試せばわかることを試しもせず、そんな態度じゃどうにもならんと思うぞ。 あと余計なお世話かもしれないが、268には君が質問したいと思っていることが 恐らく伝わってないと思われる。 そしてそれは268の読解力のせいというより、お前さんの文章の表現が酷すぎるからだと思う。 まあ俺自身も君の質問の意図を勘違いしている可能性は大いにあるが、一応質問に回答するけど オーバーライドされたメソッドというのは、たとえその呼び出しがベースクラスに 記述してあるとしても、元のベースクラスのメソッドではなく、オーバーライドされた方の メソッドが呼び出されるんだよ。 MeとMyClassとMybaseの違いとか、あとShadowsとかの意味を調べた方がよさそうだね。
271 名前:268 mailto:sage [2007/05/19(土) 21:11:27 ] ん?外してたか? よくわかんね
272 名前:266 mailto:sage [2007/05/19(土) 23:18:20 ] >>270 ああ!そうなんですか。 勘違いしてました。 確かにこれからテストコード書くんですが、そもそもどういう仕組みになるのか 考えていたもので、ありがとうございました。
273 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 07:36:18 ] ActiveReportを使って、ユーザーが任意の列数を選択し、印刷プレビューに表示させる という内容のプログラムを作成中なのですが 列数が10を超えた場合、次のページに残りの列を表示、というのは可能なのでしょうか。 ActiveReport、もしくなそれに似たようなものを使った経験のある方、よろしくお願いします。 ※ActiveReportの設計は私ではなく別の人が行っております。列を格納する部分は10個になっていました。
274 名前:デフォルトの名無しさん [2007/05/20(日) 12:22:05 ] >>273 ActiveReportsについてるサンプルくらい見ろ あとメソッドやプロパティ一覧も 余裕で出来るということが載ってる
275 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 12:26:33 ] またプチ北方謙三が偉そうに 見ろ、だってさ。 こういうの自我肥大っていうんじゃないの?w
276 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 12:30:33 ] >>275 >>273 おまえよっぽど必死なんなだなぁ・・・・ がんばれよ〜
277 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 13:40:20 ] >>275 は私じゃないけど、サンプル見てみることにします 入社一年目でこれやっといてーって丸投げされたんでなにがなんやら
278 名前:デフォルトの名無しさん [2007/05/20(日) 13:50:30 ] >>277 調べて努力すりゃ1年目でもやればできる範囲だと思ったから 丸投げしてると思うよ? コツコツ調べりゃきっとできるし、出来たとき「思えば簡単だったな」 て思えると思うよ
279 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 22:46:38 ] →キーが押下されたら、PictureBoxをウィンドウの隅にぶつかるまで右方向に無限移動させ ウィンドウの隅にぶつかったら逆走させるのって如何すればいいんでしょうか?
280 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 22:49:06 ] そのままそれをPgにすりゃいいだけだと思うんだが… どこがわからないんだ? 判定? それともすべて?
281 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 22:50:20 ] プログラムをPGって略すのは珍しいな
282 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 22:50:49 ] >>279 悪いこと言わない、プログラミングなんぞに手を出すのはやめとけ。 根本的に向いてないよお前さんには
283 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 22:52:59 ] >>280 そもそもVB.NETという概念からして良く解ってないんですが・・・ 正直、まるで何一つ解ってません・・・ ' 今のコード Public Class km Private Sub km_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown Select Case e.KeyCode Case Keys.Left Timer1.Enabled = True Case Keys.Right Timer2.Enabled = True End Select End Sub Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick PictureBox1.Left -= 6 End Sub Private Sub Timer2_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer2.Tick PictureBox1.Left += 6 End Sub End Class
284 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 23:06:24 ] おまwwwww これ右移動しながら左キー押したらどうなるんだよwwwwwwww 悪いことは言わないから まず左右キー押しっぱでそれぞれの方向に動いてはじっこまで来たらとまるプログラムかいてみ? まずはそっからだ
285 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 23:08:36 ] >>284 こんな感じでしょうか? Public Class km Private Sub km_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown Select Case e.KeyCode Case Keys.Left If PictureBox1.Left > 0 Then PictureBox1.Left -= 6 End If Case Keys.Right If PictureBox1.Left + PictureBox1.Width < Me.ClientSize.Width Then PictureBox1.Left += 6 End If End Select End Sub End Class
286 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 23:11:48 ] まーた始まった
287 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 23:12:21 ] こんな感じでしょうかじゃないよ。 試してどこがどうだめだったか報告しなさいよね
288 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 23:16:49 ] まぁ、とりあえずそれはめり込む可能性が高いなwwwww
289 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 23:26:19 ] >>287 取り敢えず、動かしてみた感じ >>284 で言われたものは出来たような気がします >>288 やっぱり、移動量が6だとめり込みますよね・・・(ウィンドウサイズが6の倍数ならともかく) 移動量を5にして、めり込まないようにしてみました
290 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 23:32:03 ] ・・・・・あのぉ・・・・まぁ・・・いいけどさ・・ もう面倒くさいからざっくりサンプル書いとくわ スペースでストップな この板的に叩かれそうなソースだがまぁ こんなバカもいるってことで とりあえずタイマをつかってるみたいだからそれは残しといてみた 以下ソース Private Enum Vector Right Left None End Enum Private Const _MovePixcel As Integer = 1 Private _Vector As Vector = Vector.None
291 名前:デフォルトの名無しさん [2007/05/20(日) 23:33:03 ] TRY-FINALLYはめんどくさいからそこに書いただけ ほんとはちゃんとしたほうがいい気がする Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown Try Select Case e.KeyCode Case Keys.Right _Vector = Vector.Right Case Keys.Left _Vector = Vector.Left Case Keys.Space 'とまる _Vector = Vector.None End Select Finally If _Vector = Vector.None Then Me.Timer1.Stop() Else Me.Timer1.Start() End If End Try End Sub
292 名前:デフォルトの名無しさん [2007/05/20(日) 23:33:57 ] Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick Select Case _Vector Case Vector.Right Dim TempRight As Integer = Me.PictureBox1.Left + Me.PictureBox1.Width + _MovePixcel If TempRight < Me.Panel1.Width Then Me.PictureBox1.Left += _MovePixcel Else _Vector = Vector.Left End If Return Case Vector.Left If 0 < Me.PictureBox1.Left - _MovePixcel Then Me.PictureBox1.Left -= _MovePixcel Else _Vector = Vector.Right End If Return End Select End Sub 忘れてたけど フォームにタイマ・パネル・ピクチャボックスおいてな
293 名前:デフォルトの名無しさん mailto:sage [2007/05/20(日) 23:39:11 ] 自分にレス番を打つと専ブラ使いにはうれしいインデント。 SELECT CASE True CASE 1 = 2 CASE 1 = 1 END SELECT >>293
294 名前:デフォルトの名無しさん [2007/05/21(月) 06:17:31 ] 列挙体はまだ高度では? つぅか、>>284 のつっこみが分かってないよな。 フォームにのめりこんでもいいから、せめて片方のタイマーを止めろよ。
295 名前:290 [2007/05/21(月) 09:02:10 ] >>293 まぁとりあえずソースみてこんなもんかな?ってのを判ってもらえる事を期待してみた(;´Д`) 多分右も左もわからないっぽいので 余計なお世話だったか・・・ まぁ、列挙タイは確かに不必要であんなるBoolのフラグのが良かった希ガス
296 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 16:47:21 ] >>290 なんというか、予防線はってるのがすごく痛い
297 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 16:49:41 ] マイク入力を録音をするアプリをつくろうと考えてるんですが、何か参考になるサイトや書籍を知りませんか?
298 名前:デフォルトの名無しさん [2007/05/21(月) 17:28:22 ] VB.netでモバイル端末用アプリを作成し、 アイコンを設定して端末へコピーし、端末側の ファイルエクスプローラexeを確認すると 設定したアイコンで表示されませんでした。 PC側では設定したアイコンで表示されます。 何か設定があるのでしょうか?
299 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 02:02:15 ] アプリ作成後にアイコン設定ってもしかしてアンタ…
300 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 06:14:19 ] >>298 おまえファミコン.icoもしらねーのかよ初心者め
301 名前:298 [2007/05/22(火) 09:04:20 ] >アプリ作成後にアイコン設定ってもしかしてアンタ… 書き方が変だったようです。 アイコンの設定はもちろんアプリケーションの プロパティ画面から設定してからEXEを作成しています。 ちなみにC#で作ったサンプルPGに同じアイコンを 設定した場合はPDAで正しくアイコンが表示されますが VB.NETではだめでした。
302 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 18:40:02 ] >>301 C#でアイコン設定したらOKで、VB.NETではNGだったってこと? ちなみにVB.NETで作成した場合、モバイル端末で表示されるアイコンはどんなの?
303 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 18:46:28 ] まあ99%なにかの勘違いだなw 同じように作ったC#はOKでVBだとNGなんてまずありえん。
304 名前:デフォルトの名無しさん [2007/05/22(火) 21:47:46 ] 継承を多用すると遅くなるって事ありますか?
305 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 21:50:39 ] そりゃあることもあるだろ まあおまいさんが書くコードに影響がある程じゃないさ
306 名前:デフォルトの名無しさん [2007/05/22(火) 22:08:07 ] >>305 ありがとうです。 ちなみに、至るところで、継承してるプロジェクトに就業しました。 インスタンスも至るところでされてます。 画面を開くのに40秒近くかかります。 継承しすぎて、何をどこでやってるか追うのに大変です。 継承遷移図やソースの名前からでは判断できません。
307 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 22:18:45 ] >>306 もしかして継承フォームのことをいってる? あれは確かに重くなりそうな気がする。
308 名前:デフォルトの名無しさん [2007/05/22(火) 22:30:41 ] >>307 言い方はわかりませんが、 画面そのものを継承していますね。
309 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 22:35:21 ] 継承そのものはコストは無視して構わない。 例えば画面なら、コントロールを山程載せてたり起動時にDBからデータもってきてたりとかその辺。
310 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 22:37:46 ] いや307の言うとおり継承フォームとか複合コントロールの継承なんかは 普通のクラスの継承とはちょっと事情が違うと思う。 普通のクラスの継承のコストなんてないと思っていいのは同意するけど
311 名前:デフォルトの名無しさん [2007/05/22(火) 22:49:52 ] ん?一人レベルが低くい質、て申し訳ないですが、 継承したら早くなるのですか? コーディングスピードていうか、共通箇所がガッツリ出来るのは理解できるのですが。
312 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 22:55:25 ] >>311 日本語でおk
313 名前:デフォルトの名無しさん [2007/05/22(火) 22:57:38 ] >>311 おk!! 処理の速度・画面の起動等のユーザサイドから見て、 継承を使用した場合、しなかった場合よりも早く感じるものなの? 作り手からみて、楽になる部分が多いのはわかります。
314 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 23:03:17 ] 実行時にはほとんどまたは全く差はない。 差が出るのはIDEの動作とか、コンパイルにかかる時間とかそんなところ。 GUI関係の継承だとIDEの動作が重くなる可能性はある。
315 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 01:56:16 ] そんなこんなで画面がでるまで40秒かかる>>306 に乾杯
316 名前:デフォルトの名無しさん [2007/05/23(水) 09:11:12 ] むしろ >>306 の基盤作った奴は起動にそれだけ時間かかってなんとも思わなかったのか・・・ それのほうが問題だよな
317 名前:298 [2007/05/23(水) 09:12:49 ] メーカーから届いた端末複数でインストールしました。 そのうちいくつかが通常のexeのアイコンでその他が 設定したアイコンで表示されました。 メーカーが提供しているDLLの不具合の可能性が出てきましたので しばらく様子を見ようと思います。
318 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:13:43 ] 質問させてください。 LAN上でSQL Serverをインストールしているサーバの検出をVB.NET(2005)で行う方法はありますでしょうか。 ありましたら、教えてください。
319 名前:デフォルトの名無しさん [2007/05/23(水) 13:51:48 ] 昔はSQLDMOつかってたな・・・ 今はもしかしたらSQLクライアントかなんかの名前空間の中にラップされた機能あるかもしれんが。。。
320 名前:318 mailto:sage [2007/05/23(水) 16:25:37 ] >319 どうもです。 SQLDMOをヒントに ttp://www.csharphelp.com/archives2/archive342.html にたどり着き、ここにあるC#のサンプルをVBに書き換えてうまいこといきました。 多謝多謝。
321 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 17:18:36 ] >318 既に解決したようですが、参考までに。 ADO.NET 2.0ならばSqlDataSourceEnumeratorクラスなるものがあるようです。 SQL Server のインスタンスの列挙 msdn2.microsoft.com/ja-jp/library/a6t1z9x2 (VS.80).aspx
322 名前:318 mailto:sage [2007/05/23(水) 17:48:50 ] >321 ありがとうございます。 自分が見つけたサンプルより、そちらのほうがいけそうです。 >320で貼ったサンプルについては、 ListAvailableSQLServersというメソッドでサーバ名取得していたおですが、 BooksOnlineに将来削除されるメソッドだとありましたので…。
323 名前:デフォルトの名無しさん [2007/05/23(水) 19:20:55 ] 諸事情により携帯から失礼します。 .netでのINIファイル読み込みの時の質問なのですが、 読み込む時に文字数制限とうってありますか?(128バイトまでとか) 開発環境はVS2003です。 よろしくおねがいします。
324 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 19:23:22 ] よろしくおねがいする前に、まず自分で試そうよお馬鹿さん。
325 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 19:32:28 ] 試した結果削られてしまって、 調べても分からなかったので質問してるのですが…
326 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 19:36:57 ] 見え透いたこと言わない方がいいよ。 絶対試してもなければ何も調べてもないってw っていうか調べてその体たらくならとっとと足洗ったほうが吉だわな。
327 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 19:45:06 ] 本当に試しましたし、調べもしました。 ですが、どうしても取って来れなかったので質問してるんです…。 見え透いた事といいますが、こんな風に言われてしまうのならば、 もうここには来ていませんし、試していないのならば貴方に愚弄されるのを分かっていて 試さずにまた聞いたりしませんよ…。
328 名前:デフォルトの名無しさん [2007/05/23(水) 19:57:27 ] 意外と設定したバッファ越えて読み込んでたりなwwwww まぁ、ありえんか・・・
329 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 20:02:59 ] INIファイルの有効サイズを超えてたりしてwwwww まぁ、ありえんか・・・
330 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 20:31:06 ] iniだろうがdatだろうがファイル読み込みはファイル読み込みでしょうが。 どんな制限だよ128バイトって いまどきこのレスだって142バイトはあるっての
331 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 20:33:52 ] 試すっていうのはね、 ファイルを読み込むだけのコードでテストしてみることをいうんだよ? それで128バイト制限が存在するかどうか分かるでしょ? つまり試してないってこったよお馬鹿さん。
332 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 20:41:09 ] >>331 スレが汚れるから死ね。
333 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 20:52:09 ] iniファイル読むのにWin32Apiとか使ってて、最初にバッファの確保処理してないんじゃね?
334 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 21:26:06 ] >>333 あ、それかもしれない・・・ ちょっと後でいじって見ます。アドバイスありがとうございました。
335 名前:デフォルトの名無しさん [2007/05/23(水) 21:27:14 ] 質問です。 C言語でDLLを作り、VBからそのDLLの関数を呼び出して使いたいのですが、 下のプログラムをビルドして実行するとLabel1には6と表示されます。 どうやらforループが2回で終わっているようですが、なぜそうなるのかが分かりません。 すみませんがよろしくお願いいたします。
336 名前:デフォルトの名無しさん [2007/05/23(水) 21:29:25 ] ソースは以下の通りです。 Option Explicit On Public Class Form1 Public Declare Function Sum Lib "C:\Sum.dll" (ByRef n As Long, ByRef a As Long) As Long Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim n, s As Long Dim aa(10) As Long aa(0) = 1 aa(1) = 5 aa(2) = 4 aa(3) = 9 n = 4 s = Sum(n, aa(0)) Label1.Text = s End Sub End Class
337 名前:デフォルトの名無しさん [2007/05/23(水) 21:30:40 ] __declspec(dllexport) long __stdcall Sum(long* n,long* a){ long sum,i; sum=0; for(i=0 ; i< *n ; i++){ sum=sum+a[i]; } return(sum); } DLLを作るのにはVC++6.0、VBは2005 ExpressEditionを使っています。
338 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 21:35:20 ] >>337 取りあえず Long と long を調べてこい
339 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 22:05:59 ] そのコードヤバくね?
340 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 22:22:40 ] テストだとしても・・・・ VB側でLong使うケースは…・
341 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 22:26:25 ] えーと、よくわからないけど これ貼っとけばいいかな? プラットフォーム呼び出しのデータ型 msdn2.microsoft.com/ja-jp/library/ac7ay120.aspx
342 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 00:25:10 ] 横からですが VBで変数宣言するときにlong型にしちゃまずいんですか? longってintの2倍のサイズの要領の数値型ですよね
343 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 00:52:27 ] >>342 VB6からいろいろ変わってしまったのだよん。 VB6のIntegerは16bit長、Longは32bit長だけど VB.NETからはIntegerが32bit長で、Longは64bit長、Shortが16bit長。 VC6やらVC2005でDLLを作った場合、.NETのLongは__int64かlong long型に該当する。
344 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 01:04:25 ] なるほど・・・ だとしたら私の場合はintで宣言したらオーバーフロー?がおきたのでlongにしたので このままで問題ないですよね? 素人なのでオーバーフローという意味がよく分かってないですが・・とりあえずint型だと容量が足りないみたいなエラーが起きました
345 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 01:11:11 ] 各数値型で扱える範囲と、そのとき扱う必要がある数値の範囲くらいは把握しとこうぜ
346 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 01:13:12 ] つーかdllの関数のシグニチャと合わせないとためだろwwww
347 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 01:54:22 ] だったらc側でlongじゃ足りんだろうがw
348 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 01:56:45 ] アドレス渡しってどうなん?
349 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 02:00:26 ] どうとは?
350 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 02:23:47 ] なにが >このままで問題ないですよね? だ!!!!!!! 問題あるから質問スレに来てるんだろが!!!!!!
351 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 02:30:06 ] >>350 こたえる気がないのなら消えろよ・・・。
352 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 02:35:31 ] >>351 は>>335 が書きました
353 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 14:08:51 ] typedef くらいしとけ
354 名前:335 [2007/05/24(木) 15:42:21 ] 皆様ありがとうございます。 今大学にいないので試す事が出来ないのですが、 夕方登校してから変数のビット長の事を考え直してもう一度やってみます。 あと、>>351 は私ではありません念の為。
355 名前:デフォルトの名無しさん [2007/05/24(木) 22:15:23 ] やる気があるんだったら家のにExpressくらい入れて試せよ 学生さんw
356 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 23:43:36 ] >学生さんw なんで最後にwがつくのかわからんが、無職のお前よりましだと思うよ。
357 名前:342 mailto:sage [2007/05/25(金) 00:38:37 ] >>350 >問題があるからここに〜 intにしているときとは違いlongにするとコンパイル時にエラーはでませんでしたが。 ここにいる理由は、他人の質問事項でも参考になるから毎日覗いていて >>338-340 のレスが気になったら質問したまでだけど。
358 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 00:43:18 ] コンパイル時じゃなくて実行時だった。
359 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 01:24:34 ] >>357 まぁ出なくなったんならいいっちゃいいのかも知れませんが、それで飯食うつもりでしたら 何でオーバーフローしたのか? それは予想された動作か? 違うならどこで変数に異常な値が入ったのか? くらいは最低限把握しておいたほうが良さそうな気がしますよ? >>346 >>335-337 はシグニチャとかそれ以前に s = Sum(n, aa(0)) なんてコードかいてる時点でVB.NETについて根本的に勘違いしてるっぽいんですけどw
360 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 02:06:47 ] >>356 お前みたいなレベルの負け組と一緒にするなカス野郎
361 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 15:14:29 ] ちょっとしたブラウザ(IE使う)を作ってみたいです まだソフトも買ってないので、日曜日に買いに行きます 入門書もあわせて買う予定です お勧めの本あれば教えてください
362 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 15:31:36 ] とりあえず、ExpressEdition使ってみたら
363 名前:デフォルトの名無しさん [2007/05/25(金) 17:35:05 ] 2005で質問です。 ピクチャーボックス・ラベルをFill・Bottomとして貼り付けたユーザーコントロールがあります。 このコントロールのMouseMove/MouseLeave/MouseEnterイベントは コントロールが上に存在している為発生しない状況です。 これらのイベントが簡単に動作する方法はないでしょうか? やはり、各コントロールのイベントを取ってきてガリガリいじって渡したりしなければいけないんでしょうか?
364 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 17:46:33 ] 内部で各コントロールにイベントつけといて ユーザーコントロールのOnMouseMove等を呼べば?
365 名前:363 [2007/05/25(金) 18:18:52 ] >>364 レスありがとうございます。 とりあえずMouseMoveはその方法で実装してみました。 各コントロールのマウスMoveイベントでユーザーコントロール内の座標に変換してユーザーコントロールのMouseMoveイベントを呼び出すようにしています。 これでMouseMoveは実装できたのですが、今度はMouseEnter MouseLeaveイベントを実装する手段が不明というか、うまいこと思いつかないです
366 名前:363 [2007/05/25(金) 18:22:21 ] 連投失礼します。 MouseEnterはPrivateなフラグをひとつ持って、内部の各コントロールのEnterイベントで フラグがOFFならユーザーコントロールのEnterイベントを発生→フラグON フラグONならなにもしない という力技実装を今思いついてやってみました。 しかし やっぱりMouseLeaveが難しいです・・・
367 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 21:01:44 ] >>363 希望するのはこういう動作? Protected Overrides Sub OnLoad(ByVal e As System.EventArgs) MyBase.OnLoad(e) For Each c As Control In Me.Controls AddHandler c.MouseMove, AddressOf Chileds_MouseMove AddHandler c.MouseLeave, AddressOf Chileds_MouseLeave Next End Sub Private Sub Chileds_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Dim pt As Point = MousePositionByClientCoordinate() Dim ev As New MouseEventArgs(e.Button, e.Clicks, pt.X, pt.Y, e.Delta) MyClass.OnMouseEnter(New EventArgs) Me.OnMouseMove(ev) End Sub Private Sub Chileds_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) MyClass.OnMouseLeave(New EventArgs) End Sub Private Function MousePositionByClientCoordinate() As Point Return Me.PointToClient(Control.MousePosition) End Function Private Function IsMouseOnMe() As Boolean Dim pt As Point = MousePositionByClientCoordinate() Return Me.ClientRectangle.Contains(pt) End Function
368 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 21:03:25 ] Private mMouseAlreadyEnter As Boolean = False Protected Overrides Sub OnMouseEnter(ByVal e As System.EventArgs) If mMouseAlreadyEnter = False Then mMouseAlreadyEnter = True MyBase.OnMouseEnter(e) End If End Sub Protected Overrides Sub OnMouseLeave(ByVal e As System.EventArgs) If IsMouseOnMe() = False Then mMouseAlreadyEnter = False MyBase.OnMouseLeave(e) End If End Sub
369 名前:363 [2007/05/25(金) 21:38:46 ] >>367-368 帰宅してたのでレス遅れてすみません ちょっとご飯食べて試してみます
370 名前:363 [2007/05/25(金) 21:49:27 ] >>366 やっぱり気になって先にソース見てました。 正に自分が欲していた動作です。 しかも超汎用性があるようにサンプルまで頂けて・・・ ありがとうございます!!!!! なんか胸のつかえが取れました!!
371 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 22:31:54 ] いや、サンプルっていうかUserControlで>>363 に書いてあるような動作を実装するような コードを書いてみただけだけどね。 なんにしろ希望の通りの動作のようで何より。 しかし、Chiledsって素で間違えたよ恥ずかしいw 中学英語も怪しくなってきているとは
372 名前:デフォルトの名無しさん [2007/05/25(金) 23:29:44 ] C言語では、static int a[3]={1,2,3}; や、 static char b[]="abc"; のように、初期化できるのですが、VB や VBA ではどうすればよいのですか、 N88 basic では、確か、DATA 文があって、できたと記憶しているのですが
373 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 00:33:09 ] Dim a() As Integer = {1, 2, 3}
374 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:01:15 ] s = Sum(n, aa(0)) これはどこがおかしいんでしょうか?
375 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:06:46 ] >>374 エスパーの俺にも君の質問の意味がわかりません。
376 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:09:11 ] 配列へのポインタと渡そうとして 先頭要素の値(への参照)を渡している いろんな言語の低レベルな知識がごっちゃになってるという最悪の状況
377 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:14:34 ] s as intger =0 n as intger =1 aa as string =123456 s = n + aa(0) だとおk? 一部省略
378 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:16:18 ] aa(0)をint(aa(0))に修正↑
379 名前:359 mailto:sage [2007/05/26(土) 02:20:08 ] >>374 大体、Integer型とInteger型の配列は全くの別物ですから。IntegerはInt32構造体、Integer()はArrayクラスが本来の姿です。 従って配列を渡したかったらちゃんとそう書かないとだめです。 Function(ByVal n As Integer, ByVal aa As Integer()) 見たいな感じで。 あとVB.NETだと参照型は値渡しでちゃんと参照が渡されるから、配列渡す時は無闇にByRef使うとえらいことになります。 そもそも、アンマネージDllの呼び出し(PInvokeとか呼ばれてますけど)はマーシャリングという処理が必要で結構奥が深いですよ?
380 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:21:52 ] でたよ・・・ プログラマ特有の頭でっかち
381 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:23:30 ] >>380 頭を落としてきた人は黙ってて下さい
382 名前:359 mailto:sage [2007/05/26(土) 02:25:56 ] >>374 あと、俺みたいに前のレス番名乗らないから>>375 みたいな突込みがくるわけで。 この板にはID無いから自分が前に出した質問があるときはちゃんと名前欄に書きましょう。 >>380 どうせ俺は21の高卒プログラマですよ・・・
383 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:34:30 ] 何か勘違いしているようだが>>335 でもないし>>347 でもないぞ?
384 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 02:49:26 ] >>383 本当だ・・・>>357 だと思ってたんだけど>>357 はちゃんとレス番書いてあるorz まぁちゃんと書いても騙りに沸かれたらそれまでなんですけどねw
385 名前:デフォルトの名無しさん [2007/05/26(土) 02:49:56 ] >>382 まぁそういうな つうか、ここでは年齢も学歴も関係ないだろ そうやって思ってもないのに自分で自分を卑下してるフリしてるやつはムカつく
386 名前:359 mailto:sage [2007/05/26(土) 03:18:18 ] >>385 まぁ実際普段仕事する分には学歴なんざ糞の役にも立たないんでしょうが、場数も学歴もないと転職キツくありません? ちなみに俺が知る限りウチの会社のプログラマに大卒は居ませんw つーかそういう話題はマ板逝けって言われそうなんで>>377-378 の件 なんか文法エラーが混じってるんで一番好意的に解釈した結果になりますが、 aa="123456"だとすると、CInt(aa(0))の結果は'1'のキャラクターコード=&H21です。 したがって s = n + CInt(aa(0)) = 1 + &H21 = 34 になりますけど、それは意図した動作ですか? そもそも>>374 ≠>>357 だと冗談抜きでエスパーでもないと無理w
387 名前:386 mailto:sage [2007/05/26(土) 03:24:50 ] 間違えたorz CharからIntegerって普通には変換できないじゃんw
388 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 03:28:13 ] >>386 お前の知る世界が狭いだけ ヘッドハントなんざいくらでもある そこに学歴は関係ないからな つうか・・・・落ち着いて書きこめよ…・ デバッグ忘れでリリースしそうなやつだな・・お前…
389 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 07:46:16 ] VBでSumって組み込みであるの?
390 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 11:55:06 ] >>388 なんか背伸びしてる感がありありだよ ヘッドハントってお前さんどんな「生き馬の目を抜く」世界にいるんだよw そりゃあるかないか、といえば確かに「ある」が、それはお前さんの世界じゃないだろうに。
391 名前:デフォルトの名無しさん [2007/05/26(土) 17:00:20 ] 変数の値ではなく、変数名を文字列に変換することはできますか? またその逆はできますか? 趣味でプログラミングを始めた初心者ですが、どなたか教えていただけませんでしょうかm(_ _)m
392 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 17:51:43 ] できるかできないか、で言えば可能だが、初心者にははっきり言って無理。 初心者にはもっと他にやることあるだろ。
393 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 21:45:29 ] >>391 ローカル変数は無理 クラスや構造体のフィールドなら可能 言葉の意味がわからないなら諦めろ
394 名前:デフォルトの名無しさん mailto:sage [2007/05/26(土) 23:28:26 ] そんなの自分でソースをパースすればいいんだよ。なんでもできる。
395 名前:デフォルトの名無しさん [2007/05/26(土) 23:47:05 ] WebBrowser で Excelファイルを表示したとき、 VB6 の頃は Excel のツールボタン列がいくらでも選択できて 表示できたのですが、VB2005 になってから表示されないようなのですが、 もし表示するための方法等がありましたら教えてください。 よろしくお願いします。
396 名前:デフォルトの名無しさん [2007/05/28(月) 06:11:59 ] VB.NET→VB2005への移行は簡単ですか? VB6→VB.NETへの移行とどちらが簡単ですか? そろそろ.NET Framework1.1のサポートが終了と聞いたので。
397 名前:デフォルトの名無しさん [2007/05/28(月) 09:32:10 ] >>396 そりゃ 過去の.NET→2005の.NETにきまってるじゃないか 基本的な部分は変わってないんだから
398 名前:デフォルトの名無しさん [2007/05/28(月) 09:53:51 ] VB2005で現在のカーソル位置を行数で知りたいんですけど、便利な方法ありますか? 確かExcelVBAでは画面の上のほうに出てたと思うんですが・・・
399 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 10:28:51 ] 何のカーソルの位置を何の行数で知りたいの
400 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 12:33:59 ] 399は優しいのな。 俺は398みたいなおタンチンは相手にする気になれん。 というか、どうせこんな人間相手に自分の希望を伝えることすらできない人間が 満足なコードなんて書けるはずがないと思うんだが。
401 名前:398 mailto:sage [2007/05/28(月) 13:57:34 ] コードエディタのカーソル位置です。 エラーがあったときデザイナを開くと「XX行目にエラーがあります」みたいなメッセージが 出るのですが、その行数に飛びたいのです。 確か空行飛ばしてカウントしてたと思います。今確認しようとしてるんですが エラーは出ても「XX行目に…」というメッセージが出ない・・・
402 名前:デフォルトの名無しさん [2007/05/28(月) 14:13:20 ] 普通に標準機能じゃ満足できないのか?
403 名前:398 mailto:sage [2007/05/28(月) 14:32:51 ] 標準って、「エラー一覧」ウィンドウに出てるエラーメッセージをダブルクリックして飛ぶって意味ですか? それができなかった時があったと思うんですけど… ていうか再現できない。何でかなー
404 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 15:44:50 ] アホをVB.NETスレから出すなよ…… ふらっとC♯, C#(初心者用) Part16 pc11.2ch.net/test/read.cgi/tech/1179313212/257 257 名前:デフォルトの名無しさん[] 投稿日:2007/05/28(月) 14:47:42 すみません、VB.NET の方で訊いてみたのですがご指導いただけません でしたのでこちらでも訊かせてください。すみません。 WebBrowser で Excelファイルを表示したとき、 VB6 の頃は Excel のツールボタン列がいくらでも選択できて 表示できたのですが、VB2005 になってから表示されないようなのですが、 もし表示するための方法等がありましたら教えてください。 よろしくお願いします。
405 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 16:18:34 ] いや・・・これ・・・VB.NET関係無い気が・・・
406 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 16:45:46 ] >>405 中のソースをVB.NETで書いてたんじゃね?
407 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 17:02:13 ] IEかOfficeスレへ逝くべきかな しかし、俺の環境じゃ普通に表示できたぞ プログラミング勉強するよりWindowsの基本操作勉強したほうがいいんじゃねぇか
408 名前:デフォルトの名無しさん [2007/05/28(月) 18:07:03 ] 初心者です。 教えてください。 フォーム上に2つのボタン Button1とButton2があったとして Button1をクリックした処理の中に、 「Button2をクリックされたイベント」を発生させたい場合 どうしたらよいのでしょうか?
409 名前:デフォルトの名無しさん [2007/05/28(月) 19:34:40 ] >>408 VB6とかVBAではなんて書いた? それがヒント。
410 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 21:17:50 ] >>408 がVB6やVBAの経験があるとは限らないだろ Clickイベントを発生させたいのか、 それともイベントハンドラのメソッドさえ呼べればいいのかどっち? 前者ならButon2.PerformClick()、後者ならButton2_Click(sender, e)
411 名前:デフォルトの名無しさん [2007/05/28(月) 21:50:04 ] >>410 いや、まあ、ただ教えてくれってだけじゃなくて、考えるヒントになればって 思っただけ。 クラスとかの質問じゃないから、どうやればそのイベントを発生させるか 考えられたら、のちのちのためになるかなぁと。
412 名前:デフォルトの名無しさん mailto:sage [2007/05/28(月) 22:13:42 ] だからって>VB6とかVBAではなんて書いた? がどうヒントになるんだ だいたいPerformClickなんて 知ってるか知らないかだけの問題であって考えても仕方ないだろ 自分で調べられるならこんなところで聞かないだろうし
413 名前:デフォルトの名無しさん [2007/05/28(月) 23:00:59 ] >>410 >>409 ありがとうございます。 ちなみにVB6、VBA 経験なしです。。。
414 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 00:07:15 ] あとVisualStudio使ってるか使っていないかは最低でも伝えてほすぃ
415 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 02:12:54 ] >>411 馬鹿は教育しなくていいよ。 知ってれば答えろ。知らなきゃ黙ってろ
416 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 08:24:32 ] なるほど、だから誰も君には何も言わないわけかw
417 名前:デフォルトの名無しさん [2007/05/29(火) 09:58:26 ] おまえら・・・・ もうちょっと教えて君には聞き方教えてやろうぜ? だからC#に聞きにいったりするアフォが出て来るんだし >>413 せめてPG経験とか、何の言語使えるとか情報出さなきゃ 知識が0なのかどうかすらわからん・・・・ 例えばJAVA経験あるといえば、JAVAでいうところのこんなもんだ って砕いた説明してくれる奴も居るだろうし てか、何でこういう奴出てくるんだろうな・・・ 何も情報出さずにエスパーしてほしい奴多すぎね?
418 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 13:26:32 ] 何で、ってそれがVB.NETクォリティだろ
419 名前:デフォルトの名無しさん [2007/05/29(火) 13:44:27 ] >>418 そうか・・・そうだよな ァ '`,、'`,、('∀`) '`,、'`,、
420 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 14:59:08 ] VB2003で、「起動時に前回終了時のウィンドウのサイズを復元する」 ということをフォームのプロパティ設定だけで実現できますか?
421 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 15:04:45 ] いいえ
422 名前:デフォルトの名無しさん [2007/05/29(火) 15:35:18 ] レジストリに書いたら??
423 名前:デフォルトの名無しさん [2007/05/29(火) 15:43:39 ] >>420 明らかにそんなものないだろうが 何の為の設定ファイルやレジストリだ?カス
424 名前:デフォルトの名無しさん [2007/05/29(火) 16:13:21 ] どうやったらできますか?って質問ならまだしもな。
425 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 19:17:57 ] Webで調べたら、プロパティ設定で実現する方法を説明しているサイトがなかったのと そういうプロパティが無かったので、そうじゃないかと思ったのですが、 明確に「プロパティ設定ではできません」みたいな説明がなかったので・・・ 昔いじってた特殊な開発環境だと、そういうプロパティがあったので、 VB2003でも無いのかなと思ったのです。
426 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 19:20:59 ] まあそう突っかかるような質問ではないよな。 2005なら可能だよ確か。 俺はそういうのくだらない仕様だと思うからやったことはないけどね。
427 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 19:24:46 ] >>425 >明確に「プロパティ設定ではできません」みたいな説明がなかったので・・・ おま・・・・・ ありえないものをどのように説明するんだと・・・・ やれるとしたら中間ファイルを書き換えるとかの手法くらいだ まずありえないけど 極端な話、自分が頭で思ったことをソフトにしてくれるツールありませんか? というような疑問や質問があって その答えを探しているようなもんだと思うぞ まともにいけば質問すらないだろう・・・・? >昔いじってた特殊な開発環境だと、そういうプロパティがあったので 何の環境なのかkwsk 一度そういう環境って見てみたい
428 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 19:28:57 ] >>427 だから悪いけど足りないのはお前さんの方だよ。 >>425 が想定したような機能が存在することを仮説するのはそんなにおかしなことじゃない。 まあ、「お前自分で全然調べてないだろう」感は否めないがね。
429 名前:デフォルトの名無しさん [2007/05/29(火) 19:39:46 ] >>427 機嫌でも悪いのか? まぁそう突っかかるなよ >>425 まぁVB.NETなら大人しくアプリケーション構成ファイル使ったほうが吉と思われ
430 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 20:46:52 ] 外部にファイルを作らずに…とは言ってないんだから、 プロパティの実装によってはプロパティに値を設定するだけで設定を永続化させるのも可能 ありえなくはないわな
431 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 21:49:33 ] 最近、あっちこっちで暴れてるヤツが1名いるようだな・・・
432 名前:デフォルトの名無しさん [2007/05/29(火) 22:04:40 ] >>420 MaximizeBoxとMinimizeBoxをFalseにして、 BorderStyleをFixedSingleにすればいいんじゃね?
433 名前:デフォルトの名無しさん [2007/05/29(火) 22:34:28 ] >>432 それは、そもそも可変不可では?
434 名前:デフォルトの名無しさん [2007/05/30(水) 15:11:52 ] Webプログ板みてもASP.NETのスレがないので、ちょいとここで聞きたいのですが。 MicrosoftからExpression Webという新しいWeb作成ソフトの紹介メールがきたんですが ホームページビルダー持ってる人は今なら68%オフで買えるそうです。aspxファイルとの連動 も良いと書いてあります。自分は今までJava,PHPでWebシステムを構築してきましたが、 今度からASP.NETもやらなくちゃなりません。このソフトは買ったほうがいいですか?
435 名前:デフォルトの名無しさん [2007/05/30(水) 18:41:34 ] >>434 とりあえずASP.NETのエディタ先使って で満足できなければ試用してみれば?
436 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 02:23:15 ] 値型の代入も、参照型の代入も = で こんな糞な言語仕様をユーザに提供して、 自分たちは使ってないんだろな。
437 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 02:29:57 ] (゚д゚)ハァ?
438 名前:デフォルトの名無しさん [2007/05/31(木) 11:04:19 ] >>436 じゃぁどうするんだ・・・? C#とかで作ってるマイクロソフト製のソフトもあるぞ?
439 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 11:53:27 ] いやいや、つか多くの言語はそうだろ
440 名前:434 mailto:sage [2007/05/31(木) 12:50:30 ] >>435 はっ。ありがとうございます。自分はちょうど浮き金がそのくらいあるのですが 交際費のためにとっておく(貯金しておく)か、それを買うか迷ってます。交際費はデートではないです。念のため。 一応、貯金しておくかな? スレ違い、ありがとうございました。
441 名前:デフォルトの名無しさん [2007/05/31(木) 14:25:37 ] VB.NET 2005で初歩的な質問なのですが ある画像をBitmapオブジェクトで取得したい場合 Bitmap.FromFile("hogehoge") で取得してもImageを取得するようになっています。 現在は CType(imageObject,Bitmap) で変換をかけているのですがなにかもっといい方法はないでしょうか?
442 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 14:42:15 ] Bitmapクラスのstringをひとつだけ引数にとるコンストラクタを使えば?
443 名前:デフォルトの名無しさん [2007/05/31(木) 14:58:18 ] >>442 あ・・・・ そうですね 今見たらFileName引数に取るのがありました 見落としてました お手数をおかけしました
444 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 15:09:02 ] VB.NETを使用してプログラムの作成をしているのですが スプラッシュウィンドウで画像を動かすにはどうしたらいいのでしょう?
445 名前:デフォルトの名無しさん [2007/05/31(木) 15:19:05 ] >>444 具体的に動かすというのは・・・どう動かしたいんだろう??? ピクチャボックスに画像表示させて タイマのイベントの中でLocationを変更させるとかでは解決できないような事?
446 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 15:20:05 ] さすがにLocationはお粗末過ぎるだろ 自分で描画しろ
447 名前:デフォルトの名無しさん [2007/05/31(木) 15:35:43 ] >>446 まぁw そうなんだけど 何をやりたいかも見えてこなかったのでそう言ってみた 反省はしていない
448 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 15:38:59 ] アニメーションGifをスプラッシュウィンドウのPictureBoxに貼り付けておく
449 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 15:44:08 ] この機会にWPFに乗り換える
450 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 16:02:24 ] >>449 横レスだが あ〜 いいよねぇ・・・つかいてぇわ FrameWork3.0導入できる所って うらやましい ウチはまだ検証段階だからって業務で使わせてくれない・・・
451 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 17:41:15 ] >>445 タイマのイベントの中でLocationですね。 調べてみます。 >>448 それは簡単そうですね。 ただGIF画像の作り方がわからないので こちらも勉強が必要みたいです。
452 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 17:44:10 ] 回答ありがとうございます。 具体的な目的が無く かっこいいスプラッシュウィンドウを作りたい という程度なので 簡単で「かっこいい」スプラッシュウィンドウの作成方法があれば 教えていただけたらうれしく思います。
453 名前:デフォルトの名無しさん [2007/05/31(木) 18:03:37 ] >>452 まぁありきたりだけど 画像とプログレスバーでXP起動画面っぽいのはどう? その前後でスプラッシュフォームのPacity(つづり忘れた)を増減させて 透明→表示→プログレスバー増加→透明→起動フォーム表示 とかだったら結構ラクだと思うけど
454 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 23:11:07 ] 透明? 使いたい画像があってそのロゴを シャキーンて感じに出したいのですが えと、画像が横からスライドして登場したり だんだん大きくなったりとか(フェードイン?) 説明わかりにくくてすみません
455 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 23:28:02 ] 透明はフェードインとかのイメージだと思うよ。 って大きくなっていくのもフェードインというのか?そうか…
456 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 00:04:30 ] 透明といえば フォームの背景色を透明にすることは可能でしょうか? プロパティのBackGroundColor(?)でWEBタブのI何とか を選んでもエラーがでてできません。
457 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 00:49:50 ] 結論:スプラッシュは不要
458 名前:デフォルトの名無しさん [2007/06/01(金) 02:26:08 ] 呼び出し先のDLLがアンマネージドの場合、 そちらのDLL内で使用されたメモリは .NET Frameworkによって自動的にGCされるのでしょうか? 下記のような構成の場合、 @やAはGC対称だが、Bの場合、 B内で確保されたメモリがB内で明示的に開放されない限り、 GCされずに確保されっぱなしと考えているのですが、 その理解で問題ないでしょうか。 VB.NETのEXE @ ↓↑ C#のDLL A ↓↑ ↑.NET系の言語 ------------------------------------------------- ↓↑ ↓非.NET系の言語 普通のCのDLL B また、Bがメモリをリークしているか否かを確認するには 呼び出す直前、直後に Process.GetCurrentProcess.WorkingSet 仕掛ければいいのでしょうか (このやり方だと、カレントプロセスの使用メモリが合算されちゃうのですが、 直後−直前の差分がBのメモリ使用量になるかと思うのですが。。。) ※すれちがいかも知れませんがアドバイスいただければ。
459 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 03:24:39 ] DLL内で使用された解放されないメモリ、てのが分からん。 そんなんがあったらアンマネージドの世界が大混乱だろ。 直呼びだろうがP/Invokeだろうが 呼び出し側で解放が必要なメモリは呼び出し側で解放する。それだけだろ? バッファを要求するAPIでMSDNにCallerはMemoryをFreeすることを Requiredと書いてあるときは呼び出し側の.netでFreeすることがMustですよ? WorkingSet からリークを判定しようなんて非現実的過ぎて しょんべんもでないわ。
460 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 07:06:39 ] そもそも.NETなのにリークが発生するのかと。 発生しないだろ、GCあるのにw
461 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 09:36:19 ] あほ
462 名前:デフォルトの名無しさん [2007/06/01(金) 09:37:11 ] 横からスマソン。 >>459 のいうとおり、確かに呼び出し元でメモリ確保したら責任もって解放するのが原則だ。 ただ、>>458 は > 呼び出し先のDLLがアンマネージドの場合、 > そちらのDLL内で使用されたメモリは っていってるから、たぶん呼び出された側のアンマネージドの中で 定義してるローカル変数アロックして、その後フリーし忘れたらどうなるのか きいてんじゃないかい? 呼び出す前後のメモリ調べようとしてるから、 そういう意味なのかと思ったが。 はずしてたらすまん。エスパーじゃないんで。
463 名前:デフォルトの名無しさん [2007/06/01(金) 09:50:04 ] つうかMarshalクラスでオブジェクトがComかどうか調べてReleaseつかって開放すればいいじゃん
464 名前:デフォルトの名無しさん [2007/06/01(金) 10:12:49 ] >>459 も460もちがうんじゃんw
465 名前:デフォルトの名無しさん [2007/06/01(金) 15:12:32 ] Office2002のCOMを使用したプログラムは、Office2007のインストールされた PCでも正常に動作するでしょうか?
466 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 15:24:07 ] 質問させてください。 環境はVB2005です。 DataGridViewで、例えば編集可能な列が2列あったとします(仮にカラムA、カラムB)。 この時、カラムAのセルに文字を入力したあと、同じ行のカラムBのセルにフォーカスを 遷移させたいのですが、勝手に入力したセルのひとつしたのセルにフォーカスが 遷移してしまいます。 どうにかして横のカラムBにフォーカスを遷移させられないでしょうか…。 どこかプロパティで指定できるのか、CellEndEditあたりのイベントに何か書けばいいのか、 探っているのですがさっぱりです。 わかる方いらっしゃいましたら、ご教授お願いします。
467 名前:デフォルトの名無しさん [2007/06/01(金) 15:32:22 ] >>466 入力の終了はどうするの?Enterで移動することになるのかな? それだったらKeyPressなりでKey引っ掛けて 現在編集中ののCellを取得し、そのRowとColumnのインデックスでも取得して 取得した現在のRow、ひとつ右のColumnのセルを指定してEditを開始してやればいいと思うよ メンバで確か編集を開始するメソッドがあったと思うけど・・・・ 最終列の場合はどうするかわからないけど、まぁどうにでもなるってこったww 説明ヘタですまないな
468 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 15:48:49 ] >467 レスありがたふ。 現状 編集可能なセルの上で何かキーを押す→編集モードになる 文字入力してEnterキーを押す→編集モードが終り、下のセルに(勝手に)フォーカス遷移 編集モードになっていないときはKeyPressやらKeyDownでEnterが拾えるんだけども、上記の場合だと拾えない… むむむ。 もう少ししらべてみまっしゅ。
469 名前:デフォルトの名無しさん [2007/06/01(金) 16:26:48 ] >>468 ちょっwwwwww ちょっと調べてみてたらMSDNに答えあるじゃねぇかwwwwww ttp://msdn2.microsoft.com/en-us/library/system.windows.forms.datagridview.processdatagridviewkey.aspx
470 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 16:50:10 ] >469
471 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 16:51:18 ] >469 途中で書き込んでもーた(´・ω・`) 継承したコントロールつくるしかないのかー・・・・ ありがとう。
472 名前:デフォルトの名無しさん [2007/06/02(土) 15:36:45 ] Property の Attribute 設定においては条件分岐などが使えるとうれしいのですが 可能でしょうか?例えば、何かの場合にはこの項目は表示し、別の場合には表示しない、 などができると助かるんですが・・・。
473 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 15:51:46 ] >>472 「例えば」が何の例示にもなってない。 もっと具体的に。
474 名前:デフォルトの名無しさん [2007/06/02(土) 16:14:06 ] >>473 そうですね、いくつかのオブジェクトで共通の項目があるとして、 しかし、何かの条件が立っているときは、それを編集不能にしたい、 つまり PropertyGrid で Disabled にしておきたい、などですね。 もし Attribute で If文みたいな条件分岐や、オブジェクトのインスタンス フィールドによるBoolean値 が使えなければ基本的に Attribute での 処理は不可能なのだと思います。そういう理解でいいでしょうか。 その場合は他の方法を考えて見ます。
475 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 16:16:31 ] >>474 > Disabled <- これは ReadOnly(True) のことです
476 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 16:18:11 ] PropertyDescriptorでなんとかなるんじゃね?
477 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 17:28:07 ] >>476 どうもです、PropertyDescriptor で オブジェクトの インスタンスフィールドによるBoolean値が使えるかどうか 調べてみます。
478 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 18:24:36 ] >>472 なんか質問が釈然としないなあ。 まずコンポーネントまたはFormのコントロールの話なんだよね? その自作のコンポーネントまたはコントロールをFormに貼り付けた時の、 デザイナのプロパティグリッドの表示を動的に変化させたいってこと? そうなら無理な気がするし、そもそもそんな必要もないのでは。 プロパティグリッドの表示の制御って属性で行うと思うんだけど、 属性のプロパティって実行時に変えられたっけ? プロパティの説明で「この値はXXがOOの時には無効です。」と表示した上で、 必要なら変更を無視するコードを書けばそれで必要十分だと思う。
479 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 19:37:22 ] >>478 >プロパティの説明で「この値はXXがOOの時には無効です。」と表示 するのは今それでやっていました。 まあそうなんですが、ReadOnly(True) の True のところに、 Boolean型の論理式を入れて制御できないものかと思ったのです。 やってみるとどうもインスタンスフィールドを使うとダメだといってくるので やっぱり不可能なのかなと思ったので、もしかしてどなたかやった方は おられないかと思いまして・・・ また調べてみますが、ダメであれば別の方法考えてみます。
480 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 21:16:59 ] 別の方法って、プロパティグリッドを制御する方法が(コンパイル時に決定する) 属性のプロパティの値以外に用意されてないとしたら不可能でしょだから。 だからそんなにどーしても変えちゃダメ、ってプロパティーなら、条件次第で 変更キックするようなコード書けばいいだけじゃん。 俺はうっとうしいと思うけど、必要ならメッセジボックスでも出してさ。
481 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 21:58:18 ] 属性は型情報なんだから、特定のインスタンスのフィールドがどうこう考えてる時点でおかしいと思えよ
482 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 01:43:00 ] 最近見かける(´・ω・`)←これの 口の部分ってどうタイピングすれば出るんだ?
483 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 02:15:06 ] オメガでおk
484 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 02:22:07 ] >>483 (´・Ω・`)サンクス
485 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 03:56:42 ] >>483 (´・λ・`)サンクス
486 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 07:57:45 ] ↓この書き方ってセンスが無いでしょうか?行によってカンマから始まったり、そうでなかったり・・・ Private Sub Test(a1, a2 _ , a3, a4, _ a5, a6 _ , a7, a8)
487 名前:デフォルトの名無しさん [2007/06/04(月) 11:14:53 ] ない
488 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 11:25:34 ] カンマは前の要素にくっつけるもんだろ。
489 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 11:52:16 ] 偶数行に特別な意味を持たせたいのならば、ないこともない
490 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 12:56:46 ] >>479 .NET 2003 でやろうとして挫折した覚えが… そのときは結局、取得なら TypeDescriptor.GetProperties(オブジェクト).Item("プロパティ名").Attributes でできるけど、AttributeCollection 自体が ReadOnly なんで 動的には変更できない、という結論に。 だが、君ならきっとやれる。頑張ってくれ。そして教えてくれ。
491 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 17:24:46 ] それは方向が間違っとる デスクリプタカスタマイズしても動的に読んでくれないと意味ないし。
492 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 00:36:57 ] マクロで頑張ってVSを操作すればできそうな気がする 気がするだけ
493 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 01:22:18 ] それはただの気のせい
494 名前:デフォルトの名無しさん [2007/06/05(火) 22:46:12 ] 携帯から失礼します SQLの質問です Sqlコネクトストリングを "DataSourse = .\EXPRESS"な感じで、 ローカル\EXPRESRを指すとします その時に、例えば、カレントのサーバーを"AAA"と設定して、 先ほどのコネクトストリングを使用して "AAA\EXPRESS"を指すことってできるでしょうか? よろしくお願いします
495 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 22:50:49 ] >>494 やってみてダメならまたおいで
496 名前:デフォルトの名無しさん [2007/06/05(火) 23:13:15 ] すみませんが教えてください。お願いします。 イミディエイト・ウインドウで、"?" の後ろに、オブジェクト変数をタイプして エンターすると、オブジェクトのパラメータがダーッと出てくるんですが、 最後まで出ないで < 詳細... (486 のアイテムの最初の 100 を表示しています。) > となって終了します。これを全部出すにはどう操作すればいいでしょう? よろしくです。
497 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 00:02:13 ] 直前に処理したメソッドの内容を無効にして、一つ前状態に戻すアンドゥーの様な 機能を持つボタンを作りたいのですが、どうすればいいでしょうか?
498 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 00:14:21 ] 直前の操作を覚えていれば、逆操作できるだろ
499 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 00:15:27 ] 動作をスタックにしていれとく 戻したらこんどはRedoのスタックにいれる
500 名前:最凶VB厨房 mailto:sage [2007/06/06(水) 00:32:03 ] >>497 あらかじめ処理する時に、 変更対象のデータの変更前と変更後を記録しておく。 その記録から、変更後の状態から変更前の状態に戻す。 処理手順の記録も方法の一つ。最初の状態からどんな処理をしたのか 手順を記録しておく。 その記録から最初から最後の処理直前まで処理をして 元に戻す。 前者はExcelちっくな表。後者はお絵かき。を想定。
501 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 05:03:57 ] >>498-500 レスありがとうございます。よくわからないけどいろいろ試してみます
502 名前:デフォルトの名無しさん [2007/06/06(水) 06:59:42 ] >>497 覆水盆に帰らず
503 名前:デフォルトの名無しさん [2007/06/06(水) 10:45:05 ] プリンタの一覧を取得したく、以下のプログラムを組みました。 For Each p As String In Printing.PrinterSettings.InstalledPrinters Debug.WriteLine(p) Next しかし、ネットワークプリンタで問題が生じています。 「\\マシン名\プリンタ名」で取得したいのですが、 「自動 プリンタ名 (マシン名 上)」の形式で取得できてしまいます。 ネットワークプリンタを「\\マシン名\プリンタ名」の書式で取得する方法はないのでしょうか? 宜しくお願いいたします。
504 名前:デフォルトの名無しさん [2007/06/06(水) 14:14:08 ] 初めて質問します。VB6の時、msgbox が表示されたときに、 CNTL + BREAK でデバッグモードに移行できたのですが、 VB.NET ではできません。なんか方法がありますか?
505 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 14:21:17 ] あります
506 名前:デフォルトの名無しさん [2007/06/06(水) 14:39:24 ] >>503
507 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 14:41:14 ] >>503 それで普通に \\マシン名\プリンタ名 で出るけどな。 「自動 プリンタ名 (マシン名 上)」
508 名前:504 [2007/06/06(水) 15:01:05 ] >>505 すいませんが、教えてください。
509 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 15:06:48 ] >>508 メッセージボックスが出たらその行にブレークポイント仕掛ければいいんじゃね?
510 名前:504 [2007/06/06(水) 15:11:59 ] それをせずに、したいのです。VB5では当然のように、できてましたから。
511 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 15:32:46 ] >>504 IDE に戻って Ctrl+Break では不満なのか。
512 名前:504 [2007/06/06(水) 15:56:09 ] >>511 知らなかった。そんな方法でできたとは・・・ ありがとう。
513 名前:デフォルトの名無しさん [2007/06/06(水) 21:06:23 ] なぜ、DB書き込む時のADDNEW がなくなったんですか? VB6でも 皆、使わないんですか?
514 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 21:15:38 ] は??? >>513 NewRowがあるじゃないか???? ん??? イミフ
515 名前:デフォルトの名無しさん [2007/06/06(水) 21:59:15 ] うへへww
516 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 06:54:44 ] Visual Studioのマクロも子のスレでいけるんでしょうか?
517 名前:513 mailto:sage [2007/06/07(木) 09:31:44 ] >>514 ADDNEWがいいんです。
518 名前:513 [2007/06/07(木) 09:35:58 ] すまん。知らなかった。INSERT してた。
519 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 20:40:15 ] なんか最近廃れてるね。 [質問1] Nullable(of T)の型に別名をつける方法って何かないかな? [質問2] Windows Form用の自作の複合コントロールAがあるとして、 それを継承するコントロールA'にさらにコントロールやコンテクストメニューを追加すると、 ビルドも実行も問題ないのにA'をデザイナで開くことができなくなることがあるけど (このとき、「ClickはReadonlyなので書き込みできない、ような意味の例外メッセージがデザイナに 表示される)こういう場合もしAに何か問題があるとしたらどんな可能性があるでしょうか?
520 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 20:50:07 ] >>519 [質問1]Imports NullableInt = System.Nullable(Of Integer) [質問2]例を出せ
521 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 21:05:18 ] >>520 [質問1] について なるほどこういう場合もImportsが一応使えるのか、ありがとう。 でも、(いや俺の質問の仕方が悪いのですが)その方法だとNullableIntっていう別名は ファイルスコープ(別のファイルからは見えない)になるよね? 例えばList(of T)なら、 Public Class IntList Inherits List(Of Integer) End Class のように形だけの継承をしてList(Of Integer)にIntListという別名をつけることができるわけだけど、 同じようなことがNullableでもできないかと思いまして。 [質問2] について。 まあおっしゃるとおりなんですが、そういう問題が起こってる複合コントロールは 業務で使ってるんでコード晒せないんですよ申し訳ない。
522 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 21:21:42 ] なんでC#だと言語レベルでNullableをサポートしてるのに VB.NETはサポートしてないんだろうな 逆ならわかるけど
523 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 21:27:18 ] なんでわかるのかわからない
524 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 21:40:03 ] どうでもいいお手軽記法っぽいから でもC#と違ってVB.NETはできるだけ記号を使わない方針のようだから Dim i As Nullable Integer みたいにするんだったら意味ないと考えたのかな
525 名前:デフォルトの名無しさん [2007/06/08(金) 21:41:51 ] javaで ArrayList<Customer> arryCst = new ArrayList<Customer>(); while(rs.next()){ Customer objCst = new Customer(); objCst.setStrCode(rs.getString("code")); objCst.setStrYomi(rs.getString("yomi")); objCst.setStrName(rs.getString("name")); objCst.setStrPost(rs.getString("post")); objCst.setStrAddress(rs.getString("address")); objCst.setStrTel(rs.getString("tel")); arryCst.add(i,objCst); i++; } 見たいな事を.NETでやりたいんですが。。 あるクラスのインスタンスを作ってそのフィールドにDBからとってきた値を格納。 それを配列にしてほかのクラスに渡すようなことをしたいんです。 どうすればいいでしょうか。
526 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 21:52:18 ] 何がわからないのか そのように書け、としか
527 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 21:53:32 ] ArrayList→List
528 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:03:53 ] >のように形だけの継承をしてList(Of Integer)にIntListという別名をつけることができるわけだけど、 やめてくれw
529 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:10:11 ] 現在、VB.NETでClickOnceを使用し業務を作成しているのですが、 ClickOnceを使用した場合にクライアントPCのFDアクセスは可能でしょうか? やれると思うのですが、確証が取れないのです誰か教えてください。
530 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:14:34 ] なんでテストしないの?
531 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:15:09 ] 誰かができるといったら確証が持てるわけ?
532 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:15:51 ] ってかできないと思う理由は何?
533 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:17:40 ] >>528 別にごく普通の手法だと思うけど。。
534 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:19:48 ] それはおかしい
535 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:19:58 ] >>529 確証は自分が調べてやってみてから聞けよ そうやってなんでもネットで調べようとするからカスになるんだ
536 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:31:09 ] >>533 ネタだよね?ね?
537 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 22:43:41 ] >>536 別に君がそう思いたければ思えばいいと思うよ俺は止めない。 内心馬鹿だな、とは思うが。 少なくとも俺は外部に公開するときに Public Funtion Hoge() as List(of MyStruct) みたいなことは不恰好だし面倒だしやってられない。 すれにList(of T)ってのは後々案外機能を拡張したくなったりするから それに備える意味でも都合がいいしね。
538 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 23:06:10 ] まあ自分が使う分にはいいんじゃない
539 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 00:23:56 ] 別名つけるのにそんなことしたら不便になる面もある。 まあ、その辺は割り切ってやってしまうってのもありだとは思うが。 やらないのは馬鹿みたいなのは本気か?と思うぞ。
540 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 01:01:11 ] >>539 すまん・・・俺の日本語の読解力が足りないせいか理解しづらい文章だ
541 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 01:16:06 ] やりたけりゃやりゃいいが、 それによる弊害もあるんだから、 やらないのは馬鹿みたいな言い方するやつは ほんとに分かってやってるのか? と疑問だってことだな。
542 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 01:24:59 ] や ら な い か?
543 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 01:28:25 ] >やらないのは馬鹿みたいな言い方 ずいぶんとまた被害妄想的だねえ。 微妙に(いや本当はかなり)ニュアンス違わないか? >>537 にあえて言葉を付け加えるとすれば、 Public Class IntList Inherits List(Of Integer) End Class これに弊害を感じるとしたらむしろそういう自分のセンスにこそ弊害を感じるべきだろう。 継承の1特殊形態(それも最単純な)に過ぎないわけで、これに弊害があるなら 継承なんて怖くて使えないだろう。
544 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 01:29:04 ] >>537 Integerはやめてって言う意味だと思う。 内心馬鹿だな、と思うのは内心だけにしたらどうかと。
545 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 07:35:39 ] >継承の1特殊形態(それも最単純な)に過ぎないわけで、これに弊害があるなら 本来同じ意味であるはずの元のListと逆方向の互換性がなくなるとか、 FindAllとかのコレクションを返すメソッドの互換性がなくなるとか いろいろ弊害はあるわけだが。
546 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 07:46:36 ] >FindAllとかのコレクションを返すメソッドの互換性がなくなるとか いや、互換性じゃなくて、期待通りに動かない、てことだな。
547 名前:デフォルトの名無しさん [2007/06/09(土) 10:14:05 ] Public Class Form1 2: Inherits System.Windows.Forms.Form 3: 4: #Region " Windows フォーム デザイナで生成されたコード " 5: 6: Public Class Test 7: Public v As Integer 8: End Class 9: 10: Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 11: Trace.WriteLine(DateTime.Now) 12: Dim count As Integer 13: count = 10000000 14: Dim test(count) As Test 15: Dim i As Integer 16: For i = 0 To count - 1 17: test(i) = New Test() 18: test(i).v = i 19: Next 20: Dim sum As Long 21: For i = 0 To count - 1 22: sum = sum + test(i).v 23: Next 24: Trace.WriteLine(DateTime.Now) 25: End Sub 26: End Class 某HPからパクって来たソースです。 これってform classの中でpublic classとしてtestというものを宣言しているんでしょうか。 javaだとありえないんですけど、.netだと許されるんでしょうか
548 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 10:15:11 ] >>547 お前の存在そのものがあり得ないと思う
549 名前:デフォルトの名無しさん [2007/06/09(土) 10:23:18 ] 殺すぞテメ
550 名前:デフォルトの名無しさん [2007/06/09(土) 10:39:18 ] 殺人予告です!!!! Try 殺人計画 包丁を足に落として自爆 いてぇえええええええええ Catch Ex asException 殺人前に一回オナニーしたいという性衝動の例外が発生しました DoTheオナニー finally もう殺人なんてどうでもいいや end try
551 名前:デフォルトの名無しさん [2007/06/09(土) 10:45:18 ] asException でコンパイルエラーとなり、 殺人計画頓挫
552 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 10:47:53 ] >javaだとありえないんですけど、.netだと許されるんでしょうか 何がありえないのか明確に。
553 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 10:56:37 ] vb.net検索結果820万件 vb.net activereports 49100件 java検索結果3億以上 java + eclipse でも4500万以上 java eclipse struts 169万件 こんなマイナー言語もうやりたくねーー わかりにくいHPかっ飛ばしてわかりやすいHP探すとか100%無理だし、本も売ってねーし 考えても答えでねーし。しかもスゲー忙しいからがんばってとか さらにわけのわかんねー10万円以上するつーるつかって、.netでいっぱいいっぱいなのになんでわけのわかんねーツールまで持ち出す 言語知識0でいきなり現場投入とかわけわかんねえええ 適当モード確定 もうどーでもいいや、シネとか言ってごめんね さようなら
554 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:03:04 ] クラスの中にもう一個クラス宣言することが許されるのかということ javaちっくに別モジュールにクラス作ってそれほかモジュールから呼ぼうとしたらインスタンスがドーのこーの言われて 出来なかったので調べてただけです。 インスタンス作ろうにもnew クラス名() の()が.net側で勝手に消されてしまう。
555 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:09:43 ] >>554 おまえその様子じゃJAVAもまともに使えてないと思うんだ 使われてるレベルだと思う
556 名前:デフォルトの名無しさん [2007/06/09(土) 11:10:25 ] >>554 試しにソース晒してみろよ?
557 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:19:05 ] >クラスの中にもう一個クラス宣言することが許されるのかということ いつのJavaだよ
558 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:25:21 ] Java だと無名クラスなんてもんすらあるのにね
559 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:36:26 ] ソースさらしたくても会社にしかないので。大体こんな感じです public class person private name as string private kana as string private age as integer public sub setPerson(byval name as string,byval kana as string,byval age as integer) this.name = name '---------thisはmeだったかも、覚えてないです--------- this.kana = kana this.age = age end sub end class 別もじゅーーるのフォームかなんかで 〜前略 person ps =new person '-------かっこつけたくても自動で消えます ps.setPerson(aaa,bbb,111) コンパイルは通ってもインスタンスどーのこーのでエラー javaは使いこなせてません、ただ見たことなかっただけですクラス中にクラスを作る。
560 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:40:48 ] >>559 結局何が言いたい(質問したい)んだい? ただ馴れ合いたいだけなら個人的には他所いってやって欲しいね。
561 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:45:35 ] いったいそれは何言語だw ちなみにVBでは引数なしのメソッド呼び出しの()は省略できる。 New だとIDEが勝手に消してしまうので、ほっとけばいい。
562 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:46:22 ] Javaの方がはるかに内部クラスだらけじゃないか イベントハンドラを実装するために内部クラスを定義しないといけない仕様だぞ
563 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:46:29 ] >ただ見たことなかっただけです 見たことない=ありえない。 おまえは神様かっ
564 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 11:55:54 ] 使ったことなかったですわ。('A`) イベントハンドライベントリスナーのことでいいんですかね それだったら使ったことありましたが1個1個implementsして使ってました。 無名とか内部クラスとかは知りませんでした。 .net書き方すらわからん初心者です。 板よごしなのでこれできえます。
565 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 12:01:17 ] 逆に凄いなw
566 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 14:45:40 ] もうほっとけよ
567 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 17:36:42 ] vb2003です。くだらない質問ですがお願いします。 mdiの子フォームでキーボードを叩いた時、親フォームのkeydownイベントを走らせないように したいのですけどどうすればいいですか?
568 名前:デフォルトの名無しさん mailto:sage [2007/06/09(土) 17:58:25 ] 親のKeyPreview = Falseにする。 する、というかデフォルトでFalseなはずだけど。 自分でTrueにしておかしいおかしいって言ってるとしたらアホ丸出しだね。
569 名前:567 mailto:sage [2007/06/09(土) 18:25:05 ] >>568 ありがとうございます。確認してみます。
570 名前:デフォルトの名無しさん [2007/06/10(日) 13:58:04 ] vb.net2005でクラス同士が完全に等しいか比べるにはどうしたらいいのでしょうか? equalsを使用してもうまくいきません
571 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 14:02:50 ] インスタンスじゃなくてクラスが等しいのか。 普通見ればわかるんじゃね?
572 名前:570 mailto:sage [2007/06/10(日) 14:04:13 ] >>571 すいません インスタンスです
573 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 14:08:28 ] 何をもって完全に等しいとするのかをはっきりさせんといかんな。
574 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 14:11:18 ] >>570 愚問だと思うよ。 そもそもそういう質問をするのはクラスがよく分かってないからだろうから 真面目に勉強しろ、としか言いようがない。 c#になるけど、アスキーから出てるartonって人のc#の本がその辺り 分かり易く掘り下げてるから読んでみるといいと思う。
575 名前:570 mailto:sage [2007/06/10(日) 14:15:08 ] >>573 なるほど!!! 何をもって完全に等しいかを考えればよかったんですね!!!!! 中に入っている変数の値、全てが完全に等しいものを探しているので 一つ一つ比較していけばおkですね! arraylistとか型がobject型のものは完全に等しいかを考えるのがむずかしいですね
576 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 14:32:07 ] 思而不学則殆そのものだな。 まあ人事だからどうでもいいけど
577 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 21:44:42 ] Wubi - Ubuntu installer for Windows pc11.2ch.net/test/read.cgi/software/1181387720/l50
578 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 23:39:47 ] コピペ君って馬鹿だな、まで読んだ。
579 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 06:18:32 ] ここは初心者馬鹿にしてストレス発散するスレだな。
580 名前:デフォルトの名無しさん [2007/06/11(月) 07:08:15 ] Form1で動画を再生(winmm.dllのmciSendStringAのopen、window、playを使って)→Form1をクリックしたら停止 というのを実現したいのですが、停止がうまくいきません。 Form1の動画以外の場所をクリックした時は停止するんですが、動画をクリックした時は停止しません。 動画をクリックした時も停止させる方法はあるのでしょうか? ちなみに↓が停止のコードです。 Dim FileName As String = """C:\1.avi""" End SubSub Form1_Click(省略) Handles Me.Click mciSendStringA("close " & FileName, "", 0, 0) End Sub
581 名前:580 [2007/06/11(月) 07:11:38 ] すみません、間違えました。 ↓です。 Dim FileName As String = """C:\1.avi""" Sub Form1_Click(省略) Handles Me.Click mciSendStringA("close " & FileName, "", 0, 0) End Sub
582 名前:デフォルトの名無しさん [2007/06/11(月) 09:18:41 ] フォーム1に同じデリゲートのプロシージャ作って 動画のクリックイベントに停止処理のプロシージャをAddhandlerしたら終わるんじゃないの?
583 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 10:39:17 ] 動画をクリッコしたとき発生するイベントに mciSendStringA("close " & FileName, "", 0, 0) って書けばいいだろ。
584 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 10:52:16 ] 栗っ子
585 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 11:47:55 ] VB.NETでは「メソッド」と「プロシージャ」の言葉はどう使い分けてるの? プロシージャ : クラスかモジュールに定義されたSubかFunction メソッド : クラスに定義されたプロシージャ でいいの?
586 名前:580 [2007/06/11(月) 14:37:12 ] めちゃくちゃ低能な質問ですが、 mciSendStringA("window " & FileName & " handle " & Me.Handle.ToString, "", 0, 0) これで動画の表示先をForm1にしているのですが(MeはForm1)、この場合の動画のクリックイベントはMe.Clickではないのですか?
587 名前:デフォルトの名無しさん [2007/06/11(月) 17:13:24 ] いや・・・・それいぜんに Dim FileName As String = """C:\1.avi""" >>End SubSub Form1_Click(省略) Handles Me.Click mciSendStringA("close " & FileName, "", 0, 0) End Sub >>つけてる行のソースはありえないから ヘタな小細工せずにそのまま貼り付けろヤ
588 名前:デフォルトの名無しさん [2007/06/11(月) 17:19:45 ] データ個数32768個(可変)、チャンネルが8ch(可変)のデータがテキスト形式であります。 チャンネルはタブ区切り、データ個数は改行区切りです。 1ch 2ch 3ch 4ch … 1 0.5 0.7 0.8 0.9 … 2 0.6 0.12 0.13 0.5 … … 32768 という感じの並びです。これを2次元配列に格納してそれぞれのチャンネルの 解析に入りたいのですが、どうやって2次元配列に格納できるでしょうか? Splitを使ってみたのですが、いまいち分からずに困っています。
589 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 17:24:33 ] >588
590 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 17:35:56 ] >588 きみのいう2次元配列ってのは (データ番号,チャンネル番号)でいいのかな?
591 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 17:37:00 ] Dim hoge(,) As String For i As Integer = 0 To データ数 - 1 データ = (i+1)行目のデータ Dim hogehoge() As String = データ.Split(Chr(Keys.Tab)) For j As Integer = 0 To hogehoge.Split(Chr(Keys.Tab)).Length - 1 ReDim Preserve hoge(i, j) = hogehoge(j) Next Next
592 名前:588 [2007/06/11(月) 17:45:31 ] レスありがとうございます。 2次元配列はできたら(チャンネル番号、データ番号)がいいですが、 解析はどちらでもできると思います。 ReDim Preserve は処理の速さはどうなんでしょう?
593 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 17:52:05 ] 自分で試してみろ
594 名前:580 mailto:sage [2007/06/11(月) 18:21:32 ] <<587 <<580は間違いなので、<<581で訂正していますが…。 とりあえず、全体です。 Public Class Form1 Dim FileName As String = """C:\1.avi""" Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" _ (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, _ ByVal uReturnLength As Integer, ByVal hwndCallback As Integer) As Integer Function SendString(ByVal cmdString As String) As Long SendString = mciSendString(cmdString, "", 0, 0) End Function Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click SendString("open " & FileName & " alias f1") SendString("window f1 handle " & Me.Handle.ToString) SendString("play f1") End Sub Private Sub Form1_Click(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles Me.Click SendString("close f1") End Sub End Class ケータイで書き込んでいるので、見づらかったらすみません。 今パソコンから書き込めないんです。
595 名前:580 mailto:sage [2007/06/11(月) 18:31:13 ] >と<を間違えたorz
596 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 18:40:22 ] >>591 やめてくれ
597 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 18:48:59 ] 参照は4バイトとして 最後には4×8×32768=1MB 平均すると0.5MB 0.5MB×8×32768=128GB つまり128GBものメモリを確保解放しまくるわけだ。 あほかと言いたい。
598 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 18:57:24 ] その けいさんは おかしい
599 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 19:00:18 ] あれ、たしかにおかしいな。 ってかこれ正しく動くのか?
600 名前:デフォルトの名無しさん [2007/06/11(月) 23:32:52 ] SqlCommand.CommandTimeoutでSQLのコマンド実行のTimeoutを設定できますが これのデフォルト値である30秒という値を変更する方法はありませんか? SqlCommandを使うところ全部でCommandTimeoutを設定するコードを書かずに 設定ファイルで変更できないものかと思っているのですが
601 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 01:28:11 ] コネクションストリングにかけば? つうか、いくらでもあると思うが…
602 名前:デフォルトの名無しさん [2007/06/12(火) 04:52:12 ] >>462 少し気になったので、相乗りで質問、というか、低脳なコメントを。 以前、VB.NETからアンマネージドのCのDLLを呼び出してたのだが、 そのCのDLLの内部に ローカル変数に対しメモリーアロック掛けっぱなしというBUGがあった。 DLLを作成してたのは他社(仮にA社)だったのでソースも確認しようがなかったので そんな障害があるとは自社ではまったく気づいておらず、 後日A社から申し出があって、不具合修正版のDLLを貰った、ということがありました。 それはそれで解決したので問題ないのですが、 もしA社が申し出なかった場合、自社では原因を掴むのが難しいと思い・・・ こんなときどうやって切り分けるのでしょうか。 >>458 の言っているWorkingSetじゃ プロセスのメモリ使用量だから 相手のDLLが使用したメモリ量だけ切り出そうと思っても できないんじゃないかと思うのだが、、、。
603 名前:デフォルトの名無しさん [2007/06/12(火) 05:38:48 ] >>597 たとい12使用しても最近のメモリは性能いいからもんだいない
604 名前:デフォルトの名無しさん [2007/06/12(火) 07:01:29 ] >>601 MSDNのSqlConnection.ConnectionStringを見たところでは対応している キーワードがないみたいです。Connection Timeoutキーワードは CommandTimeoutとは別ですよね。他の載っていないキーワードがあるのでしょうか? また、書き忘れましたが.NET Framework 1.1を使っています。
605 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 09:13:36 ] >>597 文句をいうのはいいが、打開案も出さねばゴミだ
606 名前:デフォルトの名無しさん [2007/06/12(火) 09:14:04 ] >>602 普通マネージドプログラムを書いてもらうものじゃないかな? ウチはCOM使う場合、相手に依存するから検証されてないと保証できないですよ みたいに言って逃げてる そんな深い所まで調べる時間が無い
607 名前:デフォルトの名無しさん [2007/06/12(火) 12:09:01 ] RadioButtonListなどを貼り付けたユーザーコントロールを作成しています。 RadioButtonListのListItemコレクションエディタを、ユーザーコントロール呼び出し側で、 操作したいのですが、よい方法ありませんでしょうか?
608 名前:デフォルトの名無しさん [2007/06/12(火) 12:43:20 ] プロパティでそのままラジオボタンリストを公開するとか public read only property RB as radiobuttonlist return me.RadioButtonList1 end property みたいなwwww エディタのプロパティがネストしてやりづらいしすげぇダサいやり方だと個人的に思うけど 単にラジオボタンリストのコレクション公開すればできないか?
609 名前:デフォルトの名無しさん [2007/06/12(火) 15:46:32 ] 配列のソートで質問です。 例えば以下のような構造体を持つ配列があります structure AAA ID as integer ID_2 as integer Name as string end structure このデータを List(Of AAA) に挿入してあります。 AAAの中身 ID ID2 Name 1 2 AAAAAA 3 2 BBBBBB 2 3 CCCCCCC 2 1 DDDDDD このList(Of AAA) の中のデータを簡単に ID,ID2 の準でソートできないでしょうか? 1つならば簡単なのですが 条件が2つあるというのがネックです。 ICompareを独自に実装すべきでしょうか?
610 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 16:12:19 ] >>609 msdn2.microsoft.com/ja-jp/library/w56d4y5z (VS.80).aspx
611 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 16:23:50 ] >>609 >IComparable.Compare(x, y) If (x.ID > y.ID) Then Return 1 ElseIf (x.ID < y.ID) Then Return -1 Else If (x.ID_2 > y.ID_2) Then Return 1 ElseIf (y.ID_2 < y.ID_2) Then Return -1 Else Return 0 End If End If
612 名前:デフォルトの名無しさん [2007/06/12(火) 16:28:50 ] >>610 >>611 ありがとうございます 実装できました! 実装は IComparer(Of Hoge) を使用してキャストが発生しないように実装してみました。
613 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 22:16:39 ] >>609 そもそもどうやってここにデータを入れたんだw
614 名前:デフォルトの名無しさん [2007/06/12(火) 23:06:55 ] >>613 構造体配列だから普通に入れたんじゃね?
615 名前:611 mailto:sage [2007/06/12(火) 23:48:46 ] >>611 の一行目はIComparer(Of AAA)の間違いね >>612 はわかってるみたいだけど
616 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 23:54:05 ] >>614 そっかww
617 名前:デフォルトの名無しさん [2007/06/13(水) 00:20:05 ] vb2005で、WMIを使ってUSBに接続されたHDとかの PNPDeviceIDを取得するものを作ってるんだけど、 ドライブ名を指定して取得する方法ってありますか? 「E:」って指定してできるのかと思ったけど、Win32_DiskDriveは ドライブ情報だからパーティションの情報なんてないし・・・ 方法があったら、教えてほしいです
618 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 12:07:52 ] VBSでGIF画像の色を置換したいんですが可能でしょうか? RGB(R, G, B)でいうと、緑色(85, 127, 85) ⇒ 青色(85, 127, 170) に変換したいのです。 大量の画像を一度に処理したいので、フォトレタッチソフトでは手間がかかりすぎて・・・。 どうか、偉い人教えてください。
619 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 12:23:06 ] What's VBS ? Virus Buster Special ?
620 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 16:48:14 ] VBScriptのことなんじゃね ここはVB.NETのスレですよ もちろんVB.NETなら間違いなく可能だけどVBScriptではどうかは知らん
621 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 19:25:07 ] >>619-620 レスありがとうございます。 VBSってのは、VBScriptのことです。説明不足ですみません。 VB.NETだとどういう感じに書けばいいのでしょうか?
622 名前:デフォルトの名無しさん [2007/06/13(水) 20:50:09 ] vb2005を使っているのですが質問をさせてください 例えばフォームにtextbox1〜textbox10まであったとして、それぞれに同じ処理を連続して実行したいのですが for文を使うとして for n=1 to 10 textbox(n)="文字列" みたいなことを使用としたのですが、当然これを関数名として認識してくれませんでした あらかじめ用意した変数に="textbox" & n みたいなことや 今の自分で他にも思いつく限りのことはやってみても同じでした・・・ こういったtextboxやpicutureboxなどのオブジェクト名(?)をfor文等で連続して実行させたい場合 そのオブジェクト名の連番の表記をどういった風にやるのが適切なのでしょうか? ご助言をどうかよろしくお願いします。
623 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 21:00:15 ] どうしてVB6上がりな人は素直に「コントロール配列が使いてえ」って言えないのかね。 ドトネトにコントロール配列はないから自分で配列なりListなり作って やってくださいよ。
624 名前:デフォルトの名無しさん [2007/06/13(水) 21:49:14 ] どうしてもコントロール配列みたいなことをしたければ、 #Region "Windowsフォームデザイナで生成されたコード 〜#End Region のところに、 TextBox(1)=TextBox1 TextBox(2)=TextBox2 って書いていけばできるんじゃない?
625 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 21:57:08 ] >>617 Win32_LogicalDiskRootDirectory 使えば何とかなるかも
626 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 22:24:03 ] >>622 どぼんに配列に関する項目があるから、そこを参照。
627 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 22:40:06 ] >>623 VB6なんて使ってませんが? >>626 カンシャ
628 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 22:56:49 ] まあVB6上がりであろうとなかろうと、そんな程度でいちいち人に尋ねてるようじゃ 先はないと思ったほうがいいな。
629 名前:デフォルトの名無しさん [2007/06/13(水) 23:00:27 ] ↑ ま た お ま え か
630 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 23:27:42 ] >>628 PG以前に人間としての素質が無いとお見受けした
631 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 23:56:17 ] >>625 RootDirectory の方はいらんな。 Win32_LogicalDisk の DeviceID がドライブレター。 で、そこから Win32_LogicalDiskToPartition で論理ディスクに対応するパーティションの DeviceID 取って、 Win32_DiskDriveToDiskPartition でパーティションに対応する物理ドライブの DeviceID 手に入れて、 Win32_DiskDrive から PNPDeviceID ってことになるんかな? えらく泥臭くなりそうだけど。 Win32_LogicalDiskToPartition が Win32_LogicalDisk と Win32_DiskPartition の参照を持つはずなのに 何故か String で返ってくるな……。
632 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 02:07:17 ] >>627 ↑ こいつ時々ここに沸いてるけど質問が素人くさい上に返答の仕方が房臭い つうか、カスだな 間違いなく もし業務でやっているならおれは真っ先にお前のようなやつはキル
633 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 11:29:38 ] こ、殺すの?
634 名前:デフォルトの名無しさん [2007/06/14(木) 12:24:50 ] PropertyのGet/Setで何も処理しない場合、変数をPublicにするので問題なし? 処理なしPropertyの利点が分からん。
635 名前:デフォルトの名無しさん [2007/06/14(木) 12:42:23 ] >>634 セットもゲットもさせないってことでいいんじゃない?w
636 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 12:49:34 ] >>632 ↑w ハイハイワロスワロス
637 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 12:52:59 ] >もし業務でやっているならおれは真っ先にお前のようなやつはキル だっておwwww AA(ry 馬鹿同士言い合ってる時点で俺は真っ先にそのようなやつはry
638 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 12:54:56 ] >>634 将来処理いれるかもしれないだろ? 先を見越した書き方しとけ
639 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 12:59:59 ] >>638 そうなったらその時直せば済む話。
640 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 13:09:54 ] そしたら参照してるとこ全部直さないといけないでしょうが 汚物は消毒
641 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 13:11:11 ] ↑ 二行目は気にしないでくれ。コピペミスだw
642 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 13:19:51 ] 大概、先に見越したところは想定通りにならないのが常だがなw
643 名前:634 mailto:sage [2007/06/14(木) 13:59:48 ] いや、もう本当に悩む。 変数が40ぐらいのクラスを作らなければいけないのだが、 正直かなり面倒。 今までそう言われてきたから、必ずSet/Getを作ってきたけど、 代入/取得するだけの処理に意味有るのかと。 もちろん入力規則をする場合などには、利用するけどね。 どれだけ、将来的に役立つのか疑問。。 誰か、すばらしい利点を教えてだせい。
644 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 14:15:46 ] >>643 フィールドにした場合virtual/overrideに出来ない。VBだとoverridableだっけか。 インターフェイスにフィールドを含めることが出来ない。 リフレクションなどでメソッドの呼び出しを横取りして何かの処理を行うことが フィールドに対しては出来ない。 通信やCOM呼び出しなどでインターフェイスを実装することを要求しているのは、 処理の横取りが出来ないフィールドを排除するためである。 VB6のCOMのようにpublicなフィールドを暗黙でプロパティにしてしまうのもありだとは思うが、 VB.NETはC#の考え方に合わせたのだろう。
645 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 14:17:07 ] 上のような理由からだから値型はフィールドのままでかまわないよ。
646 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 14:27:22 ] >>640 ん?プロパティにいちいち () つけるタイプ? それなら修正して回らないと駄目だね。
647 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 14:46:58 ] ん? C#メインだから()とか言われても分からないんよ public int iUnko; ↓ やっぱプロパティにしよう public int Unko{ get{} set{} } ↓ iUnkoをUnkoに書き換えなきゃなんないんじゃ? プロパティの名前をiUnkoのままでもいいけど、 そうしたらクラス内部で使うときに全部プロパティ経由になっちゃうよ やっぱ書き換えが発生するんじゃ
648 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 14:52:27 ] VBにはリファクタの「フィールドのカプセル化」がないのか。そりゃ面倒だね。 C#のもフィールドをまとめてカプセル化する機能がないのでちょい不満だけど。
649 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 14:54:59 ] >>647 ああ、いちいちプレフィックス付けるタイプでしたかw
650 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 15:06:40 ] C#3.0では自動プロパティという機能がついて public int Unko{get;set;}だけでよくなるらしい
651 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 15:35:08 ] VBは引数付きプロパティが使える関係でプロパティに引数が必要な場合は( .. ) を付ける。 引数なしプロパティには()を付けても付けなくてもいいということらしい。 C#の場合は大小文字を区別するから、フィールドnameでプロパティはNameにするのが一般的だが、 VBの場合プロパティとフィールド名の命名にそういったルールや習慣はあるの?
652 名前:634 mailto:sage [2007/06/14(木) 15:57:34 ] >>648 を参考にアドインを探したら、Refactor! というツールがありました。 悩んでいるのもあれなんで、これを使ってどんどんプロパティを作ってしまいました。 ttp://www.devexpress.com/Products/NET/IDETools/VBRefactor/
653 名前:デフォルトの名無しさん [2007/06/14(木) 16:04:04 ] VB2005でcrystal reportsを使いたいのですが、 インストール方法が分かりません。 恐れ入りますが、ご教示ください。
654 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 16:07:24 ] エディションは?
655 名前:デフォルトの名無しさん [2007/06/14(木) 16:12:06 ] >>654 Visual Studio 2005 Tools for the Microsoft Office System です。 よろしくお願いします。
656 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 18:35:50 ] ふいたww
657 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 19:33:42 ] >>650 C++/CLIなんて、property int Hoge;だけでおkだぜ?
658 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 21:53:19 ] VB2005(Professional Edition)に関する質問です。 プロセス間で同期を取るためにイベントを使いたいのですが、 VB6⇔VC2005とか、VC2005⇔VC2005とかでは他プロセスから イベントを受信できるのに、VB2005だとできなくて困っています。 どなたか原因分かる方いませんか? 以下ソースの一部(プロジェクトの種類はVCはWin32アプリ。VBはWindowsアプリ) 〜〜〜VC2005〜〜〜 hEvent = CreateEvent( , , , "test_event") SetEvent(hEvent) 〜〜〜〜〜〜〜〜〜 〜〜〜VB2005〜〜〜 hEvent = CreateEvent( , , , "test_event") iRet = WaitForSingleObject(hEvent,0) ←ここでイベントを受信しない。 〜〜〜〜〜〜〜〜〜 ちなみに同じプロジェクト内で、SetとWaitを使用した場合は動きます。 〜〜〜VB2005(動く)〜〜〜 hEvent = CreateEvent( , , , "test_event") SetEvent(hEvent) iRet = WaitForSingleObject(hEvent,0) ←これは受信する。 〜〜〜〜〜〜〜〜〜
659 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 21:58:24 ] それだけで分かったら ESP 名乗れるかもしれないな。 本題とは直接関係ないが、わざわざ Win32API 使わんで EventWaitHandle 使え。
660 名前:658 mailto:sage [2007/06/14(木) 22:12:02 ] >>659 レスサンクス 補足っぽいものさせてもらうと、 A、B共にVB2005で作ったexeとして、 A.exeでSetEvent A.exeでWaitFor〜 の場合は、イベントを受信するんだけど A.exeでSetEvent B.exeでWaitFor〜 の場合は、動かないんですよね。 VB6の場合はどっちのパターンでも動きます。 ちなみに、EventWaitHandle使う場合は、 VC側はどうやるのでしょう? VCでもEventWaitHandle?それともCreateEvent? 質問増えて申し訳ないです。
661 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 22:22:15 ] 文字セットの問題とかな EventWaitHandle は名前付きイベントのマネージドなラッパ。
662 名前:658 mailto:sage [2007/06/14(木) 22:39:09 ] >>661 レスサンクス う〜ん それも考えて、 VCのテストアプリを、マルチbyte文字セット、ユニコードの両方試してみてもダメ。 660の例では、コンパイルしてできたexeをリネームして試してみてるので やっぱり文字コードじゃなさそう。 レスに対して揚げ足取ったようでゴメンナサイね。 何か思いついたことがあれば、引き続きレスお願いします。
663 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 00:09:02 ] 本当に初歩的な質問をさせていただきます。 フォームが1つありテキストボックスが2つ(1、2)、ボタンが1つ配置してあります ボタンを押したらテキストボックス1と2に入力した文字をCSVファイルに書き込む用にしたいのですが どのようにCSVに書き込みのプログラムを組めばよいのでしょうか? CSVファイルの場所は固定です C:\ 2つのテキストボックスには4桁の整数を入力します。 CSV内で2つのテキストボックスに入力した値をカンマ区切りで書き込みたいです。 例 1234,5678 ボタンを押すごとにCSVファイル内で改行して書き込みを行いたいです 例 ボタン押下の度にCSVの中身は改行され 1234,5678 4321,0987 ・ ・ 初心者すぎてわかりにくい質問だとはおもいますが お願いいたします
664 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 00:14:24 ] その説明をそのままコードに起こせばおk で、どこが分からんの?
665 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 00:21:14 ] >>664 まず テキストボックス内の数字を CSV書き込みの時に反映させるコードの書き方が 全くわかりません・・・ 一度テキストボックス内の数字を変数入れたほうがいいのですか?
666 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 00:36:12 ] 全くって言われても……言葉通りとしか……。 とりあえずファイルに書き込むことはできてる? どうやって書き込んでる?
667 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 00:41:37 ] >>666 すいません質問が漠然としすぎていて・・ もう少し勉強してから出直してきます。
668 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 00:43:40 ] 2005で作ったプログラムを2003に変換する方法ってありますか。
669 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 01:40:00 ] 1.1にない機能を使ってたらどうすんの?
670 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 10:08:10 ] >>668 コピペしてエラーがでたら考える。
671 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 10:40:30 ] AddHandlerでLeaveイベントでを関連付けて、テキストボックスからフォーカスが移動した際に 入力のチェックをしているのですが、ツリービューをクリックした際になぜか 入力チェックが2回実行されます。 この原因及び解決法が分かる方がいましたらご教授願います。
672 名前:デフォルトの名無しさん [2007/06/15(金) 10:47:45 ] 2005のDataGridViewでDataGridViewButtonColumn列を使用して一覧の表を作成しています ある特定の行のときだけ DataGridViewButtonCellの中にあるボタンを無効化(enable=false みたいに)出来ないでしょうか?
673 名前:デフォルトの名無しさん [2007/06/15(金) 12:41:48 ] すみません。www.cbook24.com/bm_detail.asp?sku=4798011126 を買おうと思っているんですが、 下の方に印刷のところで、クリスタルレポートっていうのが、でてきます。他の本をみていても時々でています。 色々と調べてみたんですが、VB2005Proffessionalエディションじゃないとクリスタルレポートというのは つかえないんでしょうか・・・ Professionalエディションって結構高いですよね・・ よろしくお願いします。
674 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 12:43:10 ] >>671 それで原因がわかったらエスパーだなw 原因および解決法が分かる方がいましたら、ってなんだよ。 まるで原因は自分のミスじゃない、とでも言いたげだな。 そういう時は原因としてどういう可能性が推測できるか、と聞けよ。
675 名前:デフォルトの名無しさん [2007/06/15(金) 12:53:56 ] >>673 Expressでは少なくとも無いなぁ Standardはしらんが多分Pro以上 Express5000くらいで買ってProにアップグレードしたら多少安く手に入るんじゃないかな?
676 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 12:54:13 ] >>673 www.microsoft.com/japan/msdn/howtobuy/vs2005/editions/stdexp/#stdexp_feature
677 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 12:57:12 ] >>673 バンドル版はPro版以上。それ以下でも製品版を買えば使える。 japan.businessobjects.com/products/crystal/ もちろん製品版も結構高いけどな。
678 名前:デフォルトの名無しさん [2007/06/15(金) 13:02:18 ] タグ上で右クリしたときContextmenuStripが表示されるようにしたいんですが なんかいい手無いかなー? 要はタブを追加、タブを閉じるのメニューを表示したいんす
679 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 13:03:23 ] >>672 以前自分もこれしらべたことあったけど、現状じゃ無理ー。
680 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 13:05:51 ] >>678 タブコントロールのタブか? 普通にマウスクリックイベントに書けば?
681 名前:デフォルトの名無しさん [2007/06/15(金) 13:08:44 ] >>679 やっぱむりっすか・・・ 中のボタンコントロールみたいなのとれればなとか あれこれ調べたんですがこれもムリだったので、まぁ、今回はちょっと別の方法模索してみようかなとおもいます。 レスありがとうです!
682 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 13:14:45 ] >>681 正確にいうと、ReadOnlyにすることで、無効化は可能。 ただ、視覚的にenabled=false(グレー表示)にすることが不可能。 ボタンを押す行為自身はできちゃうんだよね…
683 名前:デフォルトの名無しさん [2007/06/15(金) 13:28:06 ] >>682 もうちょっとツボ抑えた機能がほしいところですね 全部既存のコントロールが中にあるんだろうし 少しくらい公開してくれても・・・(;´Д`)
684 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 13:34:46 ] 中にコントロールはなかったような。 編集するときEditControl生成するくらいじゃね? Buttonの絵を書いてるだけだよ。 じゃなきゃ何千ものコントロールのハンドル管理しなきゃいけなくなるっしょ。 だから継承して自分で描画すればいいだけの話
685 名前:デフォルトの名無しさん [2007/06/15(金) 14:04:58 ] >>684 いいヒントもらえたのでちょっと強引にやってみました。 セルのボタンを表示したくないValueにはNothing そうじゃないばあいNothing以外を入れて CellPaintingイベントで If e.RowIndex >= 0 AndAlso e.ColumnIndex >= 0 AndAlso dgvList.Columns(e.ColumnIndex).Name Is 該当のカラム Then Dim temp As DataGridViewCell = dgvList.Rows(e.RowIndex).Cells(e.ColumnIndex) If temp.Value Is Nothing Then Dim TempPoint As New Point(e.CellBounds.X + e.CellBounds.Width - 1, e.CellBounds.Y) Dim TempPoint2 As New Point(e.CellBounds.X + e.CellBounds.Width - 1, e.CellBounds.Y + e.CellBounds.Height) e.Graphics.FillRectangle(New SolidBrush(Color.White), e.CellBounds) e.Graphics.DrawLine(New Pen(SystemColors.ControlDark), TempPoint, TempPoint2) e.Handled = True End If End If ボタンを表示したくない時は自分で塗りつぶして線も描画し、表示したい時はコントロール任せ こんな感じでとりあえずいけそうかなぁと 助かりました〜
686 名前:デフォルトの名無しさん [2007/06/15(金) 14:42:56 ] グループボックスの中にボタンが配置してある場合、グループボックスの背景色を 変更したらボタンも一緒に変わってしまう。。 再度ボタンを設定しなおせば良いのは分かりますが、 予め反映させないようには出来ないのでしょうか?
687 名前:デフォルトの名無しさん [2007/06/15(金) 15:22:57 ] >>686 ???? 今やってみたけど変わらないと思うぞ あらかじめGroupBoxに背景色が設定してあって、そのうえにボタン追加したらその現象が出るなぁ・・・ ちなみに2005IDEね
688 名前:686 mailto:sage [2007/06/15(金) 15:37:46 ] ぇええぇぇええ〜。 実験どうもです。 自分の所もVS2005のVB。 ちょっと新規にプロジェクトを作成して試してみましたが、 グループボックスの中にボタンを配置して、以下のプログラムで再現します。 GroupBox1.BackColor = Color.Aqua この場合、グループボックスもボックス内にあるボタンもAqua色。。
689 名前:デフォルトの名無しさん [2007/06/15(金) 15:46:23 ] >>686 あ〜 ボタンのスタイルをスタンダードにしてるから 見た目かわらないだけでグループの背景色変えたらボタンの背景色変わってるな〜 たしかにFlatとかにしてたらIDEでも変わるのが目に見えて判る こういう処理やったことないからわからないけど・・・・自動で子にいろいろ設定されるのは難しいんじゃなかろうか・・・ FormのFontSizeとか変えたら子のサイズも変わるのと同じ原理なんだろうなぁ・・・ ある意味気が利いてていいんだが・・・
690 名前:686 mailto:sage [2007/06/15(金) 15:47:58 ] コードとか関係なくGUIでもそうなっているんですね。。 ラベルやチェックボックスとかには便利だけど、 ボタンにこれは必要ないだろ〜。 ぅう、面倒くさー。
691 名前:686 mailto:sage [2007/06/15(金) 15:50:10 ] >>689 入れ子になりました。 度々どうもです。 うーん、小さな親切って奴ですな〜。
692 名前:673 mailto:sage [2007/06/15(金) 15:51:01 ] >>675 どうもありがとうございます。ExpressからProにアップグレードできるんですか? 以前のエディションのPro版からしかアップグレードできないとおもっていたので、 とても助かります。ありがとうございました。 >>676 どうもありがとうございます。わざわざURLを貼っていただきまして。やっぱりPro版じゃないと だめみたいですね。 >>677 製品版なんてものもあるんですね。CrystalReport単品ですね。でも、7万しますね・・ MicroSoftはここまで金をもうけないと駄目なんですかね・・ どうもありがとうございました。お礼が遅くなりすみませんでした。料理してたら忘れてまして・・
693 名前:686 mailto:sage [2007/06/15(金) 15:54:48 ] >>689 ああ、どうもです。 FlatStyleプロパティをSystemにする事で、回避できそうです。
694 名前:デフォルトの名無しさん [2007/06/15(金) 16:01:58 ] >>693 ついでにちょっと試してたんだけど IDEでグループボックス貼り付け IDEでボタン貼り付け ボタンのスタイルをフラットにして、色をREDに変更 このあとグループボックスの色変えてもボタンの色変わらなくない? もちろんコードでグループボックスの色変えても
695 名前:686 mailto:sage [2007/06/15(金) 16:06:56 ] >>694 自分が確認した範囲では、一度ボタンの色を任意に設定した後は、 ボタンのスタイルに関わらず、グループボックスと連動する事はなさそうです。 スタイルをSystemにするか、BackColorをColor.Transparentにするかの どちらかになると思います。
696 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 16:11:53 ] >>674 ではその可能性とやらを教えてください
697 名前:デフォルトの名無しさん [2007/06/15(金) 16:20:47 ] >>696 またお前かw 偉そうな質問者よ 他のスレで大暴れしているな?
698 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 16:25:08 ] >>697 完全に人違い。 さっきのはもうあきらめました。 ちなみに別のところで詰まってるんだけど 教えてもらえるかな
699 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 16:54:12 ] だがことわる って言われたら諦めるの?
700 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 17:11:23 ] やだ っていったら教えてくれるの?
701 名前:デフォルトの名無しさん [2007/06/15(金) 17:23:11 ] >>700 お前には教えない 教える気になる書き方しろやカス つうか、おまえはそういう聞きかたされておしえるのか? もしそうなら教えてほしいんだが Form閉じる時に何か処理したいんだがなんてイベント使えばいいんだ? たのむから教えてくれカス
702 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 17:57:14 ] 何でお前はそんなに偉そうなんだ お前は俺の質問に答えられるのか 無理なくせにえらそうにするなよ
703 名前:デフォルトの名無しさん [2007/06/15(金) 17:59:13 ] DataTableでColumnsの最大値っていくつまで指定可能ですか?
704 名前:デフォルトの名無しさん [2007/06/15(金) 17:59:25 ] >>698 = >>700 = >>702 = Null つまり奴はこの世の中には存在しないんだよ!!!! >>702 それまさにお前 m9(^Д^) ところで釣れますか?
705 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 18:02:41 ] >>701 FormClosingだ、馬鹿。 Closingが見つからないからってあせるな馬鹿。
706 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 18:04:52 ] >>703 Columns.CountプロパティがIntegerだからそこから最大値は必然的にわかるだろ。
707 名前:デフォルトの名無しさん [2007/06/15(金) 18:09:53 ] >>706 おお! 盲点ってか全く気がつかなかった。 サンクスです。
708 名前:デフォルトの名無しさん [2007/06/15(金) 18:13:21 ] ぜひ>>671 には わ○くま とかの掲示板で質問していただきたいw
709 名前:703 mailto:sage [2007/06/15(金) 18:14:17 ] もうひとつ聞きたいことがあるんですが、 DataTableにNewRowした時点で、 あらかじめ項目に規定値をセットする方法ってあるのでしょうか?
710 名前:デフォルトの名無しさん [2007/06/15(金) 18:15:14 ] >>705 ばっかw そこは2003か2005か聞くところからはじめさせるための釣りの布石なんだよwwww MayBe... BoyesBe...
711 名前:デフォルトの名無しさん [2007/06/15(金) 18:18:11 ] >>709 DataColumn みてみ?
712 名前:703 mailto:sage [2007/06/15(金) 18:24:59 ] >>711 どうもです。 試してみます。
713 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 18:47:12 ] VB2005が何か落ちまくる。 コピペしようとすると、コピーの段階でdevenv.exeのCPU使用率が 急上昇して最終的に落ちるか固まる。 はー・・・。
714 名前:デフォルトの名無しさん [2007/06/15(金) 18:48:28 ] Dim str As String = "abc" str = Format(str, "@,@,@") MsgBox("str") これで出力をすると結果が「@,@,@」になるのですが、どうしてなのでしょうか?; どの解説サイトを見てもFormat関数の書き方は間違ってないはずなのですが・・・
715 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 18:49:12 ] ちなみにHndles Button.click内にあります。
716 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 19:09:04 ] すみません、上記は間違いです Dim str As String = "abc" str = Format(str, "@,@,@") MsgBox(str) 自分では「a,b,c」と出ると思ってるのですが、どこか間違ってるんでしょうか?
717 名前:716 [2007/06/15(金) 19:14:32 ] VB2005です
718 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 19:16:07 ] TextBox/DateTimePicker/CheckBox/RadioButton などのコントロールが 50個以上あるフォームが有るのですが、フォームのクローズボタンなどで 閉じられた際に、内容が修正された場合には確認のメッセージを 表示させたいのですが、どうすれば良いでしょうか? TextBoxの場合はModified がありますが、それ以外のコントロールはありませんし・・・。
719 名前:デフォルトの名無しさん [2007/06/15(金) 19:19:03 ] >>718 起動した時に覚えておいて Closingかなんかでチェックすればいいんじゃね?
720 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 19:27:46 ] >>719 やっぱりそれしか無いですかね。 なんか遅くなりそうで心配・・・。
721 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 19:32:32 ] フラグ一つ見るのに時間がかかるわけがないと思うんだが。 たぶん1nSecもかからないと思うぞw
722 名前:718 mailto:sage [2007/06/15(金) 19:50:28 ] >>721 え?フラグ一つってどういうことでしょうか? 今、修正される可能性があるコントロール全てを、データクラスにして 表示する時と閉じる時にセットして比べようとしているんですが・・・。 もしかして自分は壮大な過ちを犯してしまっているのか!
723 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 20:09:45 ] そのデータクラスにIChangeTrackingを実装すればいい。
724 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 20:14:26 ] フラグを一つ付けるためだけにコントロールを継承するのはアホらしいでしょ Control.TagプロパティやDictionary(Of Conrtol, Boolean)でいいと思うけど
725 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 20:15:13 ] フラグはフォーム全体に一つで十分だろ…
726 名前:724 mailto:sage [2007/06/15(金) 20:18:21 ] すまん>>723 はデータクラスにフラグを付けろって言ってたんだな それでいいと思う
727 名前:718 mailto:sage [2007/06/15(金) 20:28:27 ] ありがとう御座います。 IChangeTrackingってググってもあんまり情報が無いですね。 インターフェースですか。 変更されたかどうかと、それをリセットする事が出来るみたいですね。 まさにこれが欲しかった! .NET2.0スバラシイ! でも使い方が良く分からない・・・。 ちょっと、いろいろ実験してみます。
728 名前:718 mailto:sage [2007/06/15(金) 21:07:50 ] 駄目だ! 全然値が入らない。 そもそもインターフェースの使い方も良く分からなかった。 作ったデータクラスに、下記を書き込んで Public Interface IChangeTracking End Interface 下の変数でどうにかするんだろうけど、、サパーリネ Dim instance As IChangeTracking
729 名前:デフォルトの名無しさん mailto:sage [2007/06/15(金) 21:28:11 ] >>718 すまん。 あんたPGの才能ないと思うわ。 たぶんデータが変更された後セーブされずにプログラムが終了されようとしてる時に そのまま終了するかセーブするかユーザーに確認したい、ということだと思うけど、 それなら、仮に厳密にやるとしてもセーブした時点のデータと プログラムが終了されようとした時点のデータを比較するだけじゃん。 普通はそこまでしなくても、例えば Private dataModified as Boolean = False みたいなフィールドを作っておいて、何か一つでも変更があったらこれをTrueにすれば 用は足りるんじゃないの? もちろんundoした場合の動作の厳密さが必要ならこういう手抜きはダメだけどね。
730 名前:718 mailto:sage [2007/06/15(金) 21:37:08 ] >>729 才能無くてサーセンwwwww それって、修正される可能性があるコントロール全てに イベントを作るって事ですか?
731 名前:デフォルトの名無しさん [2007/06/15(金) 22:17:30 ] >>730 そういう聞き方するってことはたぶんコントロール自体をデータの入れ物にするような設計、 つまり何かのタイミング(ファイルにセーブするとか?)で一度に全部のコントロールの プロパティをまとめて読むような設計なんだろうけど、普通はそもそも そういうプログラムの書き方しないと思うよ。
732 名前:718 mailto:sage [2007/06/15(金) 22:55:30 ] ガーン。 そうなんですか。 >>731 の書いてある通りに、登録ってしたらコントロールの内容をDBへ 一括に書き込もうとしているんですが、これってオカシイんですか。 (コントロール→データクラス→DB) それで、登録されずに閉じられようとした場合には、確認のメッセージを 出したいって感じですが・・・。
733 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 00:37:24 ] いや、検証はいつかしなくちゃいけないんだから、 ・コントロール全部にイベントつけて値が変わったら個別の検証コード走らす ・close, apply, ok等のアクションで全体の検証コード走らす のどっちかでしょ。 前者だったらclose,apply,ok等のアクションで判定するのは一つのフラグで済むけどイベントがたくさん 後者だったらイベントたくさんはいらないけどアクションで全体を検証しなくちゃいけない どっちでもいいと思うけど、コントロールが多いなら後者がいいんじゃないの?
734 名前:716 [2007/06/16(土) 01:43:54 ] どなたか分かりませんか?; ボタンのクリックイベントで Dim str as string str=Format("ABC","@,@,@") Msgbox(str) とだけやっても結果が@,@,@となりできませんでした・・・ 数字の場合だと Dim str as integer str=Format("123","00000") Msgbox(str) 00123となり大丈夫だったんですが、Stringになると・・。 開設サイトを見ても文字列の書式は Format("ABC","@@@@@") で結果が ABCとなると書いてあるのに私のプログラムですと@@@@@なってしまいます;
735 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 10:04:26 ] まあ何が間違ってるか、ってそれはきみの学習姿勢が間違ってるんだよ。煽り抜きで。 または致命的に頭が悪いか。 いずれにせよ、そのレベルのことを人に聞くのは恥ずかしいことだ、って意識がないとしたら PG向いてないよたぶん。
736 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 10:19:00 ] >>734 ここの下のほうを見ろ msdn2.microsoft.com/ja-jp/library/wb216dct (VS.80).aspx
737 名前:デフォルトの名無しさん mailto:age [2007/06/16(土) 16:41:37 ] >>735 ま た お ま え か 煽り抜きで言わせてもらうが頭大丈夫か? このスレで「PGとして〜」「仕事として〜」「才能が〜」「素質が〜」とか言って叩かれてるやつ全部お前だろ? お前はプログラマという職業が素質、才能のあるやつにしかできないものだと思っているみたいだが もはやPGが流れ作業員として溢れている現状を把握できていればそんな高貴なもんじゃないと分からんのかw そもそも、ここはVB.NET質問スレであって ここに来ているやつは初心者はもちろんの事、仕事外で趣味でやってるやつもいて当然なんだが そこを把握できてない点で頭でっかちなお前さんはPG向いてないよ? チームで組んだことがない孤独PGか、自分の発想しか受け付けないワンマン上司と見たな。 そんなハイクオリティなお前さんには つ「【才能(笑)】高貴なVB.NET質問スレ【才能(笑)】」
738 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 17:02:51 ] >>737 > このスレで「PGとして〜」「仕事として〜」「才能が〜」「素質が〜」とか言って叩かれてるやつ全部お前だろ? 俺も言ってるから、全部同一人物ではないよ。
739 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 17:05:57 ] 「VB.netの」質問をするレベル以前の質問があるのも事実
740 名前:737 mailto:sage [2007/06/16(土) 17:12:17 ] >>738 ちなみに俺も。
741 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 17:12:21 ] 「VB.netの」回答をするレベル以前の回答があるのも事実
742 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 18:30:05 ] >>737 何度言っても分からん馬鹿だね。 初心者であることと叩いてるんじゃないんだよ。 怠惰を叩いてるの。 初心者でも怠惰じゃなきゃ734みたいな質問はしない。
743 名前:デフォルトの名無しさん [2007/06/16(土) 18:39:35 ] >>742 かわいそうな ゆ と り w
744 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 19:00:10 ] >>741 低レベルな質問には低レベルな回答で十分
745 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 19:06:25 ] VBスレだけは回答者がアホ杉。 C丼スレと比べても明らか。
746 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 19:08:19 ] c#スレもここ1年ぐらいはずいぶんレベル低いんだけどな。
747 名前:デフォルトの名無しさん [2007/06/16(土) 20:12:18 ] てかみんなC#もVB.NETも同じように使えるんだろ?
748 名前:デフォルトの名無しさん [2007/06/16(土) 21:02:23 ] 同じように使えるがVB上がりは総じてバカなんだお^^
749 名前:デフォルトの名無しさん mailto:sage [2007/06/16(土) 21:49:57 ] VB6しかできません><
750 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 02:43:45 ] >>742 怠惰?お前は734の何が分かってるんだ? 分かったから>>737 で書いたとおり専用スレにでも行っとけ
751 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 02:45:45 ] >>742 あと「何度」って どれとどれとどれとどれどれと、どれだよ?
752 名前:デフォルトの名無しさん [2007/06/17(日) 03:35:48 ] >>742 そう思えばスルーすればいいじゃないか? 別にここはそういう人間が来ていけない理由もないし 怠惰であろうがなかろうが答えてもいいと思える人間が答えられるならそれでいいじゃないか
753 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 05:56:12 ] throw new exception("他でやれ")
754 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 22:58:03 ] VB2005からVCで作られたDLLをコールするときにエラーが出て困ってます。 関数のパラメータに構造体を指定して、構造体のメンバの文字列を渡したいけれど、 なんかうまく行かないんですよね。VB2005だと固定長文字列ってのがサポートされて いないとか何とか言うのは分かったけれど、解決方法が不明となっています。アドバイスをお願いします。 コードはこんな感じ。 *VC2005***************************************************************** typedef struct{ int iTemp; char cTemp[256]; }tag_strTemp; void __declspec(dllexport) WINAPI TestFunction(tag_strTemp* pstrTemp) { MessageBox(NULL, pstrTemp->cTemp, "", 0); } *VB2005***************************************************************** Moduel Module1 Public Structure tag_strTemp Public iTemp as Integer Public cTemp as String ←ここの定義に問題があるんだと思ってます。 End Structure End Module Public Class Form1 Private Sub Form1_Load(・・・) Dim strTemp as tag_strTemp strTemp.cTemp = "ABCDE" TestFunction(strTemp) End Sub End Class
755 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 23:03:16 ] MSDN の相互運用マーシャリング以下の項目見れ サンプル付きで解説されてる
756 名前:デフォルトの名無しさん mailto:sage [2007/06/17(日) 23:34:39 ] つうか chrにString渡してどうする・・・・ Chrで渡せばいいのに・・・・
757 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 00:12:40 ] >>756 君も恥かかないうちにその辺で止めといたほうがいいよw
758 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 00:23:27 ] >>757 まぁ・・・書き方はともかく理由は分かってそうなイメージだけどな
759 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 00:41:08 ] 756が分かってるわけないでしょw 値型と参照型の区別もついてないか、あるいはCで>>754 みたいな構造体を 作ったときのメモリイメージが理解できてないか、少なくとも何れかではある。
760 名前:デフォルトの名無しさん [2007/06/18(月) 09:14:20 ] >>759 まさか・・・Stringを値型と勘違いしている・・・わけねぇべ そんなPGいねぇだろ
761 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 10:07:38 ] >>754 <StructLayout(LayoutKind.Sequential)> _ Public Structure tag_strTemp Public iTemp as Integer <MarshalAs(UnmanagedType.ByValTStr, SizeConst := 256)> _ Public cTemp as String End Structure 詳細は>>755 の通りでMSDN参照のこと。 複雑になるようならC++/CLIでアセンブリラッパを作ってもよい。
762 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 12:24:29 ] アラインメント(パッキング)も指定した方がいいんじゃない? まあMSDNライブラリにデフォのパッキングサイズは8Byteって書いてあるのは 間違いっぽいから要らないのかもしれないけど。 あとOut属性も。
763 名前:デフォルトの名無しさん [2007/06/18(月) 13:32:31 ] SQL鯖のDBのカラムで AAA というカラムがあり VarChar(100)でNotNull+デフォルト空文字だとして データ取得する時に 1: dim temp as string 2: temp = directcast(dt.rows(0).item("AAA"),string) として取得している部分があったとき 2の部分でこうやってやるのってムダダしやる必要ってあると思う? 俺は定義で必ずNullはないとしているんだからナンセンスだと思うんだが みんなはどうやってるんだろ? if dt.rows(0).item("AAA") isnot dbnull.value then temp = directcast(dt.rows(0).item("AAA"),string) else 'あれば何か書く end if
764 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 17:59:04 ] SQL文中で ISNULL(対象カラム,'') ってしておけばいいんでない。
765 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 19:42:13 ] やる必要なし NotNull制約を外した場合を考慮するってことなんだろうけど そんなこと考え出したら、システムがややこしくなっちまう 心配ならデータ設計見直すべき
766 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 21:37:34 ] >>762 適当なこと言うな。 .NET のマーシャリングのデフォルトパッキングは8で間違いないし この場面ではパッキングサイズは問題にならない。 文字列を DLL に渡したいのに Out 属性つけてどうする。
767 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 21:47:07 ] >NET のマーシャリングのデフォルトパッキングは8で間違いないし いやだからMSDNライブラリにはそう書いてあるけど、実際いろいろ試してみると どうも4になってるみたいだよ。VB固有かも知れないが。 あと、アラインメントが問題にならない訳がないw 最後の行に関しては確かに>>754 はそう言ってるね見落とした。
768 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 21:53:44 ] >>767 間違いなくパッキングサイズの意味を勘違いしてる。 <StructLayout(LayoutKind.Sequential, Pack:=4)> _ Structure Pack4 Public Data1 As Byte Public Data2 As Long End Structure <StructLayout(LayoutKind.Sequential, Pack:=8)> _ Structure Pack8 Public Data1 As Byte Public Data2 As Long End Structure <StructLayout(LayoutKind.Sequential)> _ Structure PackDefault Public Data1 As Byte Public Data2 As Long End Structure Debug.WriteLine(Marshal.SizeOf(GetType(Pack4))) Debug.WriteLine(Marshal.SizeOf(GetType(Pack8))) Debug.WriteLine(Marshal.SizeOf(GetType(PackDefault))) > あと、アラインメントが問題にならない訳がないw 「この場面では」と断ってるだろ。
769 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 21:55:12 ] だから「この場面で」問題になるってw 頭おかしいんじゃないの?
770 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 22:02:24 ] >>768 でデフォルトが 8 ってのは証明できてるとして。 <StructLayout(LayoutKind.Sequential, Pack:=4)> _ Structure Pack4 Public Data1 As Integer <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=5)> _ Public Data2 As String End Structure <StructLayout(LayoutKind.Sequential, Pack:=8)> _ Structure Pack8 Public Data1 As Integer <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=5)> _ Public Data2 As String End Structure Debug.WriteLine(Marshal.SizeOf(GetType(Pack4))) Debug.WriteLine(Marshal.SizeOf(GetType(Pack8))) 何がどう問題になるのか教えてもらおうか?
771 名前:デフォルトの名無しさん mailto:sage [2007/06/18(月) 22:10:02 ] ?
772 名前:754 mailto:sage [2007/06/18(月) 22:18:26 ] >>755 ,761 ありがとう! 解決しますた! >>762 さんが言ってたことについては、 アラインメントについても詳しくは理解できていないので、 メンバを8byte区切りにしたり、ダミー変数使ったりして対応します。
773 名前:デフォルトの名無しさん [2007/06/20(水) 11:56:14 ] 検索システムで,検索結果をDataGridに表示しています.(ReadOnly) ちがう条件を入力したら,現在表示されている行に追加されていきます. どうしたら,DataGridに表示されている内容をリセットできますか? DisposeだとDataGridごと消えるし,空データをバインドしても消えないし… どなたか教えて下さい.
774 名前:デフォルトの名無しさん [2007/06/20(水) 12:02:59 ] Panel コントロールで、ScrollBar の Scrollイベントに合わせて リアルタイムで追随する移動を行うべくあちこち探してるのですが、 こういうときは、Client領域を移動できるメソッドかプロパティとして 何を使用すればいいでしょうか。
775 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 12:12:07 ] Location
776 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 12:40:29 ] >>773 ちょっとソース書いてみ
777 名前:デフォルトの名無しさん [2007/06/20(水) 12:45:56 ] 一つのプロジェクト内にユーザコントロールを作成して利用していますが、 コントロールを配置したフォームのデザインが修正されると?エラーになり、 デザイン画面が表示されなくなります。 エラーメッセージ 型 'hogehoge.TukuttaControl' が定義されていません。 例: プロジェクト名:hogehoge ユーザコントロールクラス名:TukuttaControl コントロールを配置したフォーム:Form1 とある時に、Form1.Desugner.vbの内容が以下のように勝手に 修正されてしまい、上記のエラーになってしまいます。 ○ Me.TukuCon = New TukuttaControl ↓ × Me.TukuCon = New hogehoge.TukuttaControl どうにか対策は無いでしょうか?
778 名前:777 mailto:sage [2007/06/20(水) 12:47:40 ] 追記です。 × Me.TukuCon = New hogehoge.TukuttaControl 上記のhogehoge.を消せば、デザイン画面も正常に表示されます。 またTukuttaControlはDllにはなっていません。 よろしくお願いします。
779 名前:デフォルトの名無しさん [2007/06/20(水) 12:58:12 ] >>775 あーっそうでしたか、助かりました!! 回答ありがとうございました!!
780 名前:デフォルトの名無しさん [2007/06/20(水) 13:30:11 ] >>779 と思ったら、これってのはもしかして、Client領域のView範囲を動かす のではなくて、中のコントロールだとかを自前で動かすということでしたか・・・? PanelのClient領域のView位置をプログラムで移動するには何を使えば いいでしょう?
781 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 14:04:23 ] >>780 何いってんのかさっぱりわからんが、 Panel内をスクロールさせたいの? もしかしてPanelにScrollコントロールをわざわざつけてたりする? AutoScroll = trueにすれば自動で表示されるけど。 あとは ScrollControlIntoViewとか VerticalScroll/HorizontalScrollとか
782 名前:デフォルトの名無しさん [2007/06/20(水) 14:58:45 ] >>781 どうもです!! 実はそのAutoScrollですが、確かにScrollBarが出てきてすくロース機能は あるにはあるのですが、、 そのスクロースバーを掴んでマウスボタンを離すと、Panel内のViewが移るのが わかります。 しかし、リアルタイムの動作にならず、これを、マウスボタンを掴んだままで View位置を動かしたいのでした。 マウスのホイールをまわすと確かにリアルで動きますが、スクロールのスピード が限定されるので、できればバーの動きと同期した移動を行ないたいのです。 SetDisplayRectLocation なども見ていますが、これだとWinProcとか使わないと いけなさそうでした。できれば手軽に既存のメソッドかプロパティがあればと・・・。
783 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:37:19 ] ID3v1のタグを読み取りたいのですが 発売の年だけがうまく読み取れません 誰かご教授願えませんでしょうか? あとエクスプローラーからのドラッグ&ドロップも宜しければお願いします。
784 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:46:29 ] それだけ言われてもそうか大変だなとしか言いようがねぇ D&D なんて検索すりゃいくらでも出てくるだろ
785 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:10:21 ] 昔VB6で作ったプログラムを、プロジェクト変換機能を使ってVisualStudio2005に 読み込ませてコンパイルしてみたら、.Netframework必須のアプリが できあがってしまいました。 VB6で作ったプログラムをVisualStudio2005でコンパイルして .Netframework不要のアプリを生成することはできないでしょうか。 .Netの機能を使いたいわけではなく、コンパイルしたいだけなのですが なんとかならないでしょうか。
786 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:14:27 ] なりません。 はい次。
787 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:22:00 ] >>785 いかんともしがたい
788 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:51:06 ] >>782 オレの環境では、Panelにボタンを置いてスクロールさせるとリアルで追従するけど?
789 名前:デフォルトの名無しさん [2007/06/21(木) 01:01:09 ] Diposeパターンについて教えてください。 PenやBrushのようなアンマネージリソースをラップしたオブジェクトを保持するクラスの場合 AとBのどちらで開放するのが正解? Public Overrides Sub Dispose( ByVal disposing As Boolean) If disposed Then If (disposing) Then ' マネージリソースの開放 (A) End If ' アンマネージリソースの開放 (B) disposed = True End If End Sub
790 名前:デフォルトの名無しさん [2007/06/21(木) 01:02:32 ] いきなり打ち間違えてるし。。。 Disposeパターンです。
791 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:03:15 ] disposingに関わらず解放
792 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:04:48 ] IntPtr 以外は全部マネージドと考えてもいいよ。 つかその辺は保持するな、必要な時に作ってすぐ捨てろ。
793 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:06:42 ] いや、コストを考えるとキャッシュしておきたい場合もあるだろハゲ
794 名前:デフォルトの名無しさん [2007/06/21(木) 01:06:51 ] ん? 791と792と回答が違うけど、どっちが正解?
795 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:09:39 ] 792。 自分が持っている参照型のフィールドはファイナライザのタイミングでは手を出しちゃダメ。
796 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:10:14 ] ファイナライザ?
797 名前:デフォルトの名無しさん [2007/06/21(木) 01:10:56 ] サンキュー イマイチ、この辺の具体例を書いてあるサンプルが見つからなくて困ってた。 勉強になったよ。
798 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:24:05 ] また羊がひとつ屠られた
799 名前:デフォルトの名無しさん [2007/06/21(木) 01:50:49 ] VB2005(Express)でお聞きしたいのですが Public Sub WriteXml(ByVal fileName As String) Dim instance As New DataSet1.NewItemDataTable instance.WriteXml(fileName) End Sub 上記コードでデバッグ中にDataTableVisualizerで確認してもデータテーブルにデータが ない状態で、出力されたXMLにも書き出されていませんでした。 データセットに存在しているのはこのテーブルだけです。 DataTableをバインドしているDataGridViewには入力中データが反映されています。 DataTableをXMLに出力するにはどうすればよいのでしょう。 わかりにくいかも知れませんが、よろしくお願いします。
800 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 05:35:37 ] new って英単語の意味は知ってる?
801 名前:デフォルトの名無しさん [2007/06/21(木) 09:24:27 ] >>799 DataGridView.DataSource つかえこのカス野郎!
802 名前:デフォルトの名無しさん [2007/06/21(木) 09:48:20 ] VB2005について質問です SPREADで列数18、幅25の表を作ったら動作が重かったんですが、軽くする方法ありませんか?
803 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 09:55:58 ] >>802 グレープシティーに聞けばいいと思うよ
804 名前:デフォルトの名無しさん [2007/06/21(木) 10:08:52 ] >>802 しかもおまえマルチかよ・・・・ ほんと頭悪いから出て行けよw なにをどうとかなら判るが これだけの情報でどうやって動作軽くしろとかいうんだ アフォらしいの通り越して、お前みたいな奴がソフト作るのホントやめてほしい //-------------------------------------------------------- Visual Basic2005やりたいんだけどアドバイス頼む ttp://pc11.2ch.net/test/read.cgi/tech/1158410544/67 67 名前:デフォルトの名無しさん[] 投稿日:2007/06/21(木) 09:25:40 初心者な質問スマソ SPREADで行列100 X 18、列幅25の表つくったんだけど、 処理(スクロールや行選択)が重いんだけど軽く出来ませんかね?
805 名前:デフォルトの名無しさん [2007/06/21(木) 12:01:29 ] メールアドレスを正規表現で抽出する場合どのように記述すればいいのでしょうか?
806 名前:デフォルトの名無しさん [2007/06/21(木) 12:05:32 ] >>805 スレ (´∀`( ´∀`) チガイ
807 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 12:27:59 ] >>805 ググれよ
808 名前:デフォルトの名無しさん [2007/06/21(木) 12:40:18 ] 散々ググったんですがどうもいまいちわからないんですよ。 冷たいこと言わないで教えてくださいよ。
809 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 12:44:16 ] メールアドレスに一致する正規表現は「ありません」 とぐぐった一発目にあるが?
810 名前:デフォルトの名無しさん [2007/06/21(木) 12:51:04 ] あ(笑)。もしかしてほんとは皆さん知らないんじゃ無いんですか?
811 名前:デフォルトの名無しさん [2007/06/21(木) 13:09:25 ] >>788 どうもです!! 自分はWindows2000+VS2005Proの環境を使ってまして そこではスクロールバーの動きに追従しませんでした。 環境差による可能性がありそうなので、これから別PCの WinXp環境に移して試してみます。助かります!!
812 名前:799 mailto:sage [2007/06/21(木) 13:59:53 ] >>800 と言うことは、Newでクラス参照すると全く新規で作られるということでしょうか? 既存のDataTableを参照するにはどうすればよいのでしょう? >>801 調べてみましたが、使い方がわかりませんでした。すみません。
813 名前:デフォルトの名無しさん [2007/06/21(木) 14:08:28 ] だから 調べてみましたが、使い方がわかりませんでした じゃわかんねぇYO! どこがどうわからんのか言えよ 使う気ないのかしらんが あと既存のDataTableを参照するには と書いてあるということはDataTableをDataGridViewにバインドさせて使ってるんだよな? つまりDataGridViewはその元のDataTableをDataSourceとして持ってるわけだ
814 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 14:12:26 ] >>813 こんな努力もしないアホに教えようとするだけムダだ 質問すらもまともにしようとしていないしな ほれこれでいいだろ もう来るなよ Public Sub WriteXml(ByVal fileName As String) Dim instance As DataSet1.NewItemDataTable instance = DirectCast(DataGridView1.DataSource , DataSet1.NewItemDataTable ) instance.WriteXml(fileName) End Sub
815 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 15:34:06 ] >>808 うぜえな www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=vb+%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE+%E6%A4%9C%E7%B4%A2&num=50 3つめにあるじゃねえか。
816 名前:デフォルトの名無しさん [2007/06/21(木) 15:36:45 ] >>815 みんなスルーしてたのにお前の優しさに>>808 が泣いた
817 名前:デフォルトの名無しさん [2007/06/21(木) 18:56:25 ] 知ってたら教えてー。 VS2005(VB.NETもC#)のIDEで、タブ付きドキュメントにしてソースを 開いていくと、タブが左側に追加されていくのを、右側に追加して いくように変更できないのかな?
818 名前:デフォルトの名無しさん [2007/06/21(木) 19:02:29 ] >>788 WinXp環境に移して試してみましたところ、この環境ではScrollBarの 動きに追随してリアルタイムでViewが動くのを確認しました。 これは環境的な理由があるようにも思いましたので、 ひとまず現状のままにしておきます。 情報ありがとうございました!!!
819 名前:デフォルトの名無しさん [2007/06/21(木) 20:19:49 ] hp.vector.co.jp/authors/VA026956/MouseGesture.html を組み込みました。 実行ファイルをダブルクリックで実行、ショートカットからの実行では問題ないのですが、 ファイルにこのアプリケーションを関連付けしてファイルから実行すると、 エラーで落ちてしまいます(エラーの詳細はわからず)。 おそらくDLLの場所がわからず、読み込めないため落ちてると思うのですが、 レジストリの関連付けで、作業フォルダの指定もできないみたいです。 どうすればいいのでしょうか。。
820 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 21:05:30 ] VBにはJavaのThrowsのような 関数に例外をスルーさせる方法はありますか?
821 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 21:06:51 ] あります。
822 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 21:09:55 ] ググッてみてもJavaとは例外処理の概念が違うから ウンヌンカンヌンで例外のエスカレーションは できないのです。みたいな事書かれていたので できたら、やり方教えてもらえないでしょうか キーワードだけでも結構です。
823 名前:819 mailto:sage [2007/06/21(木) 22:19:21 ] やり方がわからなかったので、自前でマウスジェスチャくみますた。。
824 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 22:24:21 ] 例外はほっときゃ勝手に呼び出し元に伝播する
825 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 00:03:32 ] 互換機能のOn Error Goto は使わないようにね
826 名前:819 mailto:sege [2007/06/22(金) 01:22:39 ] 1 sub main() 2 F(1,1) 3 F(1,0) 4 end sub 5 function F(a as integer, b as integer) as double 6 return a/b 7 end function たとえば上のような疑似VBコードにおいて 実行すると 6行目で例外発生して止まる。 で5行目を function F(a as integer, b as integer) as double Throws Exception のように書き換え実行すると 2行目で例外が発生しましたとなって止まる。 ようにしたい。要するにデバッグしやすいように例外を使用したい
827 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 01:51:25 ] >>826 なんだ例外のエスカレーションとかいうレベルの話じゃなかった
828 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 02:11:58 ] >>819 たぶんdllとはなんの関係もないウンコなミスとエスパーするがどうか。
829 名前:デフォルトの名無しさん mailto:sage [2007/06/22(金) 02:29:14 ] >>826 茶化したままだとあれだから、VS2005でマイコードのみの設定が有効になってるのを確かめて、 DebuggerNonUserCode属性を付ければ目標は達成できる。 <DebuggerNonUserCode()> _ function F(a as integer, b as integer) as double return a/b end function
830 名前:デフォルトの名無しさん [2007/06/24(日) 06:16:44 ] 誰か似たようなことを経験していたら教えてほしいのですが、、 あるコントロール上をマウスが通ると、MouseMoveイベントが普通立つと思う。 しかし、何かある操作をしてから、同様にしても、今度は全然 MouseMove ~~~~~~~~~~~~ イベント自体が立ってくれなくなる。それで仕方なく、別のアプリケーションの ウインドウをクリックしてFocusを移してから、再度元のアプリケーションに 戻って同様にしてみると、今度は MouseMoveイベントが立ってくれる、 とちょっと変な現象なんですが、こういうことってあり得るでしょうか?
831 名前:デフォルトの名無しさん [2007/06/24(日) 06:37:21 ] >>830 この場合、「何かある操作」 というのは、そのコントロールの置いてある Panel の右クリックで ContextMenuStrip を表示して、その際、そのメニューのどれも クリックせずに、また Panel 上のどこかをクリックして ContextMenuStrip を Close する、というだけの操作なんですが、これをすると、それまで立ってくれてた その Panel 上のコントロールで MouseMove イベントが立たなくなるのでした。
832 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 07:03:19 ] 一切自分では調べてないだろ ttp://www.google.com/search?hl=ja&lr=lang_ja&oe=utf8&q=mousemove+contextmenustrip
833 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 11:59:27 ] >>831 メニューのClosedイベントで System.Windows.Forms.ToolStripManager+ModalMenuFilter.ExitMenuMode() を呼ぶと直る。 リフレクション使わないといけないけど。
834 名前:デフォルトの名無しさん [2007/06/24(日) 13:42:03 ] >>832 ありがとうございます。 これ一応 BUG だったんですね・・・う〜ん。 >>833 どうもです、助かります。 >System.Windows.Forms.ToolStripManager+ModalMenuFilter.ExitMenuMode() この方法、調べて使ってみます。 >リフレクション使わないといけないけど これについても具体的にはどうすればいいかまだわかりませんが、また調べてみます。 それでもわからない場合また質問するかと思いますが、 またよろしくお願いします。
835 名前:デフォルトの名無しさん [2007/06/24(日) 15:54:43 ] >>833 すみません、この ModalMenuFilter というのは、ヘルプで検索しても 検索結果 0 で情報が出てきませんでした。 ググってみましたが、ただ一件 www.google.com/search?hl=ja&q=ModalMenuFilter&btnG=%E6%A4%9C%E7%B4%A2&lr= があるだけでしたが、これって何かのクラスなのでしょうか。このページ開いても 該当箇所は見られませんでした・・・う〜ん困りました。。。 よろしければご指導の続きを戴ければありがたいです。すみません・・・。
836 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 18:34:16 ] >>834 internalなクラスだから説明はどこにもないと思う。 手元にあるのはC#のコードだけど適宜よみかえてちょ。 void contextMenuStrip1_Closed( object sender, ToolStripDropDownClosedEventArgs e ) { Type t = Type.GetType( "System.Windows.Forms.ToolStripManager+ModalMenuFilter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" ); MethodInfo mi = t.GetMethod( "ExitMenuMode", BindingFlags.NonPublic | BindingFlags.Static ); mi.Invoke( null, null ); }
837 名前:デフォルトの名無しさん [2007/06/24(日) 18:56:16 ] ContextMenuStrip の中のどれかをクリックして実行すると(それが空の関数であっても) 問題は起こらないため、一つ考えられるのは、 ContextMenuStrip の Closing イベントでそれを強引に実行してやればどうだろう、とも思ったのですが、この 強引にコードから ContextMenuStrip の中のどれかに Click イベントを起こすためには どうすればいいでしょう、これについて知りたいです。 よろしくお願いします。
838 名前:デフォルトの名無しさん [2007/06/24(日) 18:58:05 ] >>836 おお、どうもです!!かぶってすみませんでした。 こういう方法あるんですね、ありがとうございます。 助かります。やってみます!!
839 名前:838 [2007/06/24(日) 20:53:38 ] >>836 素晴らしいです、みごとに一発で解決しました。 一時は本当にどうしたものかと悩みました、でもこれで助かりました。 >internalなクラスだから説明はどこにもない やっぱり一般人には知りえない内容なのでしょうか、 もしかしてMSの人じゃないとわからない、とかでしょうか・・・ でも本当に助かりました、ありがとうございました!!
840 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 21:25:37 ] Reflectorだろ
841 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:42:37 ] vbというよりもフォームの質問なのかもしれませんが、 初心者スレが見つからないのでここで質問させていただきます。 グループボックスの中にラジオボタンがいくつかと、ラベルをひとつ配置します。 そのラベルの中にラジオボタンをいくつか配置した上で、 ラベルの外(グループボックスの中)のラジオボタンとラベルの中のラジオボタンを 同じグループとして扱いたいのですが、どのように設定したらよいのでしょうか? お分かりの方がいらっしゃいましたら御教示お願いいたします。
842 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:44:29 ] そんな変態行為は .NET では認められません
843 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:45:37 ] おぁー!変体行為だったんですか。 それは困りました。どうしましょう?
844 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:46:36 ] さぁ。
845 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 00:17:59 ] >>841 ラベルはコンテナコントロールじゃないよ。 言ってる意味わかる? まあ、「初心者スレが見つからないので」とか言ってるが 質問なんかせめて初心者本の数冊も読破してからにしてくれよ。
846 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 00:18:41 ] こういうのっておおっぴらに使うか悩んだりしない? まあ、ネット上で見つけた情報を利用したって立場をとるんだがw
847 名前:826 mailto:sege [2007/06/25(月) 00:19:44 ] >829 遅くなって申し訳ない、ありがとうございます。
848 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 02:40:29 ] >>846 「こういうの」ってのが何を指してるのかさっぱり。
849 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 07:24:33 ] >>839
850 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 11:33:11 ] >>841 ユーザコントロール作れ
851 名前:デフォルトの名無しさん [2007/06/25(月) 14:55:01 ] 誰か助けてくたざい。 VB2005で、プログラムが完成して、動作を確認できました。 そこまではよかったのですが、実行ファイルを共有フォルダー(サーバーに) において、実行すると、どうしても実行できません。実行できたとしてもまともに動作しません。 これの解決策だれか知りませんか?
852 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 14:58:26 ] ヒント:カレントディレクトリ
853 名前:デフォルトの名無しさん [2007/06/25(月) 15:04:38 ] サーバに実行ファイルがおいてあるんだろ? 普通は実行できないだろ. MSDNに書いてある.
854 名前:デフォルトの名無しさん [2007/06/25(月) 15:06:36 ] >853 それを実行する方法を知りたいのです。
855 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 15:26:09 ] 素人にはおすすめしないがポリシーをいじる。 コントロールパネルの管理ツールの .NET Framework 2.0 Configuration ランタイムセキュリティポリシー (他をいじってなければ)コンピュータのコードグループのAll_Codeの下に 新規作成の条件の種類を選択するでURL:\\サーバー名\共有名\* アクセス許可セットFullTrust インストーラを作るかClickOnceを使うかかサーバーからローカルにコピーさせるかをすすめる。
856 名前:デフォルトの名無しさん [2007/06/25(月) 16:12:33 ] むしろこれはVB.NETの問題ではないな・・・ つうか、あれか・・・クリックワンスのまえのやつやりたいのか? 名前忘れたけど
857 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 17:23:03 ] ノータッチ デプロイメント?
858 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 17:39:38 ] 気持ちは良く分かる。 正直セキュリティが云々言われても無駄に面倒くさい。 ちょちょっとしたものを作って共有しようとしても インストーラやらClickOnesやら、、、。 ちょっと話がずれるが必要なDLLとかは、実行ファイルへ含めるもしくはフォルダ等へ 指定できたら良いのに。 この時代に容量削減も糞も無いだろう。 実行ファイル1Gとか上等じゃねーか。
859 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 22:59:56 ] 質問です。 いまFramework1.1で勉強中なのですが 1.1のNotifyIconはバルーン?が表示できなかったので いろいろ調べて ttp://supware.net/?notifyiconex に辿りつきました。 このクラスを使うとバルーンは表示できるのですが、 ContextMenuがどうしても表示できません。ContextMenuのPopupイベントは反応あるのですが・・・ 色々検索してみて大量にヒットするC#のコードを見る限りおかしい所は 自分の力量では発見できないので、ヒントでも構いませんので助言をお願いします。 環境はWindowsXP、Framework1.1、メモ帳です。 以下のコードを同上のクラスの下に書き、コマンドプロンプトでコンパイルしています。 Module Test Private myForm As Form Private notifyEx As NotifyIconEx Private cMenu As ContextMenu Sub Main() cMenu = New ContextMenu cMenu.MenuItems.Add("Item1") notifyEx = New NotifyIconEx() notifyEx.Icon = New Icon("C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\ndpsetup.ico") notifyEx.contextMenu = cMenu myForm= New Form() myForm.ContextMenu = cMenu myForm.ShowDialog() End Sub End Module
860 名前:859 mailto:sage [2007/06/26(火) 20:49:34 ] なんか俺の質問でスレが過疎ったみたいで・・・・(´・ω・`) 調べたらTrackPopupMenuExがうまく動作してなかったみたいなんで 試行錯誤してNotifyIconExのTrackPopupMenuExを修正して ContextMenuがでるようになりました はっきりと原因した原因はいまだ不明ですが とりあえずしゅっくり勉強したいと思います。
861 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 21:47:38 ] >>859 >Framework1.1で 今古いランタイム使う意味は何でしょう? 行きがかり上のしがらみ?それとも以前のもののバージョンアップ でしょうか?もし新規アプリなら2.0以上でやるべきではないでしょうか?
862 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 21:59:18 ] それは大きなお世話だと思うぞ。
863 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 10:37:28 ] >>859-860 コマンドプロンプトでコンパイルしている人間がここにはいないんだろう。
864 名前:デフォルトの名無しさん [2007/06/27(水) 13:17:50 ] >>861 おまえ某MVP臭いぞ 仕事してたらわかるだろ? 仕方ないときもあるんだし
865 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 16:04:39 ] でも>>859 の場合は多分勉強だよ? VB.NET Expressでいいやん
866 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 20:17:35 ] ちょっと安めおまいら。これでも見ろ。知らない人間は えーーーーっと驚くこと請け合いだぜ。 「911」の真実とはダイジェスト版 ? 日本語と英語 ? .movフォーマット ? 31分 - 23MB www.harmonicslife.net/gallery/main.php?g2_itemId=3443 「動画をダウンロード」 をクリックすると、動画が始まるまでに20分ぐらい待つと 自動開始する。 30分ぐらい待ってもよければこっちも見る。こっちは詳細バージョンだから、上のを見て 興味もったらぜひ見てみれ。 『911の嘘をくずせ ルース・チェンジ・セカンド・エディション』 日本語版 - ウェッブ・バージョン ? .mov フォーマット ? 83分 - 83MB www.harmonicslife.net/gallery/main.php?g2_itemId=1225 要するに俺らはこういう戦争に加担しちまった。おれも当時は小泉に賛成しちまって ネットで賛成派に回っちまったよ。だが悪いことだった、北朝鮮のミサイルが来るって ことでアメリカとは同盟するしかないって信じ込んでた。しかしこれを見れば、 ちょっと待て日本はこれでええのか?と疑問になるはず。
867 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 20:26:46 ] 003はフランソワーズ まで読んだ
868 名前:859 mailto:sage [2007/06/27(水) 22:52:37 ] >>861 確かに勉強中なんですが、職場にはFramework1.1のvbc.exeしか はいってないので昼休みとかにも弄るために1.1でやってます。 基本はそんな変わらないだろうってことで。 職場はネットにも繋げないんでヘルプもクラスライブラリをHTMLで保存して CDに焼いて持ち歩いてたりします。 家にはVB2005Expressインストールしてあるんですけどね・・・ >>863 やっぱ危篤な人種なのか・・・ dllとかを毎回入力するのが億劫なんで 簡単なHTA作ってコンパイルしてます。 とか言ってたらこんなん見つけました ttp://www.sliver.com/dotnet/SnippetCompiler/ ところで、 「FileSystemWatcherで共有フォルダにあるExcelファイルが更新された場合にバルーンでその旨を表示」 というコンセプトで勉強アプリを作り始めたのですが、 Excelは「開く」「閉じる」だけで、更新日時が変更されNotifyFilters.LastWriteを設定しても 正確な情報が取れないことが分かりました・・・ 自分で考えつくのは、 変更されたらファイル名と更新日時の値を保持して次に同名ファイルが更新されたら比較する といったものなのですが、もっと良い案や確実に更新されたのを取得できる方法がありましたら アドバイスお願いします&このスレの住人さんはレベルが高そうなんで 素人はこっちいけや〜的なスレがありましたら誘導していただけると嬉しいです ここからずっと俺のターン?(´・ω・`)
869 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 01:44:00 ] >このスレの住人さんはレベルが高そうなんで ナニヲイッテイルンダ 定期的にファイルのハッシュ比較するとか 前回保存日時で比較するとか すりゃいいんじゃね?
870 名前:デフォルトの名無しさん [2007/06/28(木) 09:05:36 ] みなさんこんにちは。お尋ねします。 通常のLabelですと後ろに引っ込んだ3D形状はあるものの 手前に出っ張った形状は付属されていないのですが、 どこかのサイトで、手前にふくらみのあるラベルコントロールなどが あるところをご存知ないでしょうか? それともこういったものは有料のものになるのが普通でしょうか? 昔、LabViewというものを触ったことがあり、それには手前に出っ張って いるガジェットがたくさんあったのを記憶しています。あれと同じような 感じに見えるものがほしいのですが、 もしご存知の方がおられましたら教えて戴きたく、 なにとぞよろしくお願いします。
871 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 10:00:47 ] >>870 LabelのPaintイベントで自分で描画する。 例えば Label1のPaintイベントに e.Graphics.DrawRectangle(New Pen(SystemColors.ControlDarkDark), New Rectangle(0, 0, Label1.Width - 1, Label1.Height - 1)) e.Graphics.DrawLine(New Pen(SystemColors.ControlLightLight), 0, 0, Label1.Width - 2, 0) e.Graphics.DrawLine(New Pen(SystemColors.ControlLightLight), 0, 0, 0, Label1.Height - 2) 微調整はお好みで。
872 名前:デフォルトの名無しさん [2007/06/28(木) 10:08:31 ] >>871 これって、自分で描画できるものなのですか!凄い。 ありがとうございます、やってみます。助かります。
873 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 15:51:21 ] >>871 直接描画するんじゃなくてControlPaint.DrawBorder3Dを使うべき
874 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 16:18:24 ] 数字をアルファベットに変換する場合、みんなはどうしてる? たとえば、99ならninety nineとか、11ならelevenとかに変換したいんだけど(´Д⊂グスン
875 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 16:28:51 ] 自前で実装
876 名前:871 mailto:sage [2007/06/28(木) 16:30:14 ] >>873 Private Sub Label1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Label1.Paint ControlPaint.DrawBorder3D(e.Graphics, Label1.ClientRectangle, Border3DStyle.Raised, Border3DSide.All - Border3DSide.Middle) End Sub こんな感じでいいかな?
877 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 16:52:48 ] >>875 めんどくさい(´Д⊂グスン
878 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 16:55:33 ] >>877 このスレで一番言ってはならないことを言ったなw もう誰も答えてくれんよw
879 名前:874 mailto:sage [2007/06/28(木) 17:07:53 ] >>878 んだねw ↓探したらいろいろあった www.google.co.jp/search?hl=ja&q=NumberToWord%E3%80%80C%23&btnG=%E6%A4%9C%E7%B4%A2&lr=
880 名前:デフォルトの名無しさん [2007/06/28(木) 17:26:07 ] >>873 >>876 こちらもやってみました。 実は、ユーザーコントロールで複合したものでやってみてるのですが、 Label と TextBox の組み合わせで同じ UserControl に乗っけてまして、 その際、ClientRectangle の Inflate とかが必要のようですね。+2ぐらいしないと 外形が遇わないようです。 ところで、この Raised を使った場合、それを通常の BorderStyle プロパティに 追加して選択できるようにもしたいのですが、UserControl なのでPropertyを Overrideして追加するとしたら、どういった感じにすると出来るでしょう? ご指導戴ければありがたいです。
881 名前:デフォルトの名無しさん [2007/06/28(木) 17:28:11 ] 普通にプロパティつくってその中でいじってやればいいんじゃねぇ? やり方は好みだとおもうんだが・・・・ オーバーライドする必要がないと思うから
882 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 17:32:32 ] >>880 UserControlじゃなくてLabelクラスをオーバーライドするほうがスマート
883 名前:882 mailto:sage [2007/06/28(木) 17:33:38 ] すまんオーバーライドじゃなくて継承ね
884 名前:880 [2007/06/28(木) 19:31:41 ] >>881 なるほど、UserControl だと、そのものの Property になるということですね。 わかりました、助かりました。 >>882-883 そういう方法もあるということですね。今こちらのはTextBoxと他にもうひとつ Labelも使ってたので、むずかしそうだったため、UserControl にしてしまってました。 たぶんよく理解していればできるのだと思うのですが、組み合わせコントロールとしては デザインモードでの視覚的な組み合わせが楽な UserControl にしてました。 その方法での実現についてはまた勉強して考えてみます。
885 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 11:25:32 ] user.configの仕様どうにかならないかなー。 MySettingsで保存する際に、保存場所を指定できたらすごく便利なのに。。 バージョンごとに保存先が変わるとか、どうしてこんな糞仕様なのか。 せめて選べたら良いのに。
886 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 11:40:44 ] >>885 MSDNみたら user.config は System.Windows.Forms.Application.LocalUserAppDataPath プロパティで指定した場所に配置されます。 とある。 試して無いけど。
887 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 12:38:34 ] っていうか、恥ずかしいからMy爺さんの機能なんか使うなよw リソースにアクセスする用途しか使ったことないぞ俺は
888 名前:デフォルトの名無しさん [2007/06/29(金) 12:39:42 ] 質問です VB(どういうかVSのマクロ)で、ドキュメントウィンドウに文字を出力する際に 入力する文字列に,(カンマ)が含まれるとE_FAILが帰ってくるんですが これをどうにかして,,,,見たいなのも出力できるように出来ませんかね? 具体的に言うならこういうの↓ DTE.ActiveWindow.Selection.text += "nullpo,," でエラーなしにする方法、,,で打ち切られないようにする方法が知りたいのです
889 名前:デフォルトの名無しさん [2007/06/29(金) 12:43:54 ] >>887 設定保存とからくじゃないかw 俺はSettingとResource使ってるな
890 名前:885 mailto:sage [2007/06/29(金) 13:05:37 ] >>886 おお! どうもです。 ちょっと調べてみようっと。 >>887 初めちょっと嫌だなーとか思ったけど、使ったら超便利だった。 サクサク保存できる。
891 名前:885 mailto:sage [2007/06/29(金) 15:53:01 ] >>886 Read only でした。
892 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 17:00:10 ] 次のようなクラスを作成する場合、 aaa.bbb() aaa.ccc.xxx() aaa.ccc.yyy() aaa.ddd.zzz() Public Class aaa Public Sub bbb() 〜〜〜 End Sub 次のコードは?? End Class 教えて下さい。
893 名前:デフォルトの名無しさん [2007/06/29(金) 17:08:31 ] 適当に やり方はいろいろだと思うけれど・・・・とりあえずで public class c_ccc public sub xxx end sub public sub yyy end sub end class public class d_ddd public sub zzz end sub end class public class aaa public ccc as new c_ccc public ddd as new d_ddd public sub bbb end sub end class
894 名前:デフォルトの名無しさん [2007/06/29(金) 17:33:47 ] >>893 thx
895 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 20:45:04 ] サーバに置いたexeを動かすのにexeと同じ場所にMicrosoft.VisualBasic.Compatibility.dll が無いと動かないPCと無くても動くPCがあるのは何故なんでしょう? OSは2KだったりXPだったりだけど、どっちでもなるのならないのあるし、 もちろんみんな.netフレームワーク1.1は入ってるし (動かないPCでもそのDLL置いただけで動くようになった)
896 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 22:40:14 ] >>895 .netを再インストしてみよう com登録してなくても検索パスにdllをおいただけで動くよ
897 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 23:04:34 ] >>896 thx XPだと.netプリで入ってるけど、一度アンインストールして再インストールすればいいのかな? 一度試してみます
898 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 23:10:12 ] >>895 プログラムがバージョン違いのMicrosoft.VisualBasic.Compatibilityを参照してる ってことはない? .NET 1.1 なら ver. 7.0.3300.0 のはずだが。.NET 2.0は Ver.8.0.0.0 。 あと.NET 1.1 のSPで差が出るかどうかはわからないがその辺も調べてみて。
899 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 05:23:45 ] こんにちは、お尋ねします。 各種オブジェクトのイベントの発生順序に関する一覧表のようなものは どこかのサイトで公開されていたでしょうか? (例えば TreeViewコントロールのTreeNodeをクリックした後の各種イベント MouseClick,Click,OnBeforeSelect,OnAfterSelect などの発生順序、等です) こうしたものはすべてのイベントについて実験していくことは可能なのだとは 思いますが、できたら理論的に分っているものがあれば、そのほうが正確で早い と思いました。 もしご存知でいらっしゃいましたら教えて戴きたく。よろしくお願いします。
900 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 06:26:29 ] 強いて言うならMSDN
901 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 10:34:09 ] つか常識的にMSDN
902 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 11:44:35 ] MSDNとS・G・G・Kって何か似てるよな
903 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 12:44:35 ] たぶん OnBeforeSelect は OnAfterSelect の前
904 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 12:52:13 ] >>899 そういうこと言いたい気持ちはよく分かるんだけど、 実際自分で試すのが一番正確で速いでしょ、どう考えても。 というか、まあ一概には言えないけどコントロールのイベントの発生順序に 依存するコードというのは、ちょっと不吉な匂いがするよ。
905 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 14:43:50 ] >>904 禿同 特にツリービューは気をつけたほうがいい
906 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 15:05:28 ] >>900-905 MSDNですと、発生順序に関しては必ずしも明記されていないように思いました。 確か本にはFormのLoad時とClose時のものなどが掲載されているものがありました。 それと同様の情報がどなたか公開されているのではないかと思ったのでした。 それでは、また調べてみます。ありがとうございました。
907 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 16:34:26 ] 明記されていない場合は順番を当てにしない方がいいと思うよ
908 名前:デフォルトの名無しさん [2007/06/30(土) 22:22:46 ] 自分でConsoleWriteでもつかって調べればいいだろうに・・・・
909 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 22:36:44 ] 俺も前にトレイからの復帰時にtreeview関係のイベントが起きて困ったもんだ
910 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 12:29:39 ] 順番を当てにされたくないから意図的に明記してないのかもしれないし
911 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 12:40:46 ] いやそういう問題でももちろんあるんだけど、 「イベントの順序に依存したコードの不吉な兆候」というのは、 仮にそれ(イベントの順序)が確定しているとしても、それを人間が正しく 認識していないと意味を把握できないコードになりがちだから 保守性や拡張性の点で問題があるということでしょ。
912 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 15:37:39 ] GroupBoxの線の色を代えられないとか、どんな仕様にしてるんじゃ.NETは〜!! ちょぼちょぼ、痒い所に手が届かない風にコントロールなどが 作られてあって面倒くさい。 つうか、折れも画面を作る前に気が付けよ・・・。 は〜〜〜。orz
913 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 15:51:28 ] 馬鹿の要望きいてるほどMSも暇じゃないんじゃね?
914 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 16:01:51 ] 文句はチラシの裏に書け。 質問なら、素直に聞け。 思わせぶりな文章書いて、対策案を貰おうとしている様が見え見えで引く。
915 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 16:32:44 ] >>913-4 すいません。愚痴でした。 確かにチラシの裏に書いとけば良かったです。 まあ、もう、解決したんですが、その方法もチラ裏に書いときますわ。 いや、しかし.NETはほんとに、ちょっと足りないよ。 DateTimePickerは空に出来ないとか、FileDialogでフォルダとファイルの選択が〜とか。 ま、こちらも解決しているんで、今となってはどうでも良いですが。
916 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 17:56:26 ] >>915 だからチラシに書けよ。書き込むな。
917 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 17:58:22 ] 質問スレに愚痴てwwwwwどんだけwwwwwwwww
918 名前:デフォルトの名無しさん [2007/07/02(月) 18:16:42 ] >>915 >いや、しかし.NETはほんとに、ちょっと足りないよ。 いや、足りないのは君の頭と想像力と解釈力
919 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 20:05:50 ] >>915 標準コントロールの機能が十分だったらサードパーティ涙目だろが
920 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 20:16:06 ] というより、たまたま俺様が欲しいと思ってる機能がないのは何でじゃ〜(ムキー) っていうのはちょっと精神病チックだよね正直w まあ20%ぐらいは共感できる部分もあるけど、ドトネトの場合比較的簡単に コントロールの機能が拡張できるから俺はそんなに不満はないなあ。 ただ、ToolStrip関係はもう少しなんとかならなかったのか?とは思わんこともない。 クラスライブラリ的に醜すぎるし、拡張がしづらいんだよねToolStrip関係は。
921 名前:デフォルトの名無しさん [2007/07/03(火) 12:01:30 ] 業界未経験ですが、PGの面接に行ったらVB6をやってもらうと言われました。 現職場でVB.NETではアプリケーションを作ったこともあり、受注先に納品した り、社内でのデータベースを構築した経験(図書管理など)もあります。 .NET→VB6へ下がってしまうのがなんか時代に逆行するようで嫌なのですが、 .NET→VB6への移行(頭の切り替え?)はやっぱり難しいものでしょうか? 一応、エクセルのVBAはフォームまわりやファイル処理はできます。
922 名前:デフォルトの名無しさん [2007/07/03(火) 12:13:28 ] VBA+αくらいで考えとけばいいんじゃない? 意向が難しいかどうかは人それぞれだけど たぶん君なら大丈夫 ただ・・・いろいろ.netならなぁ・・ とか思うことは多いだろうな・・・・
923 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 14:02:48 ] If文とか書いたとき、自動でEnd Ifを挿入してくれなくてイラつくと予想。
924 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 14:03:27 ] VB.NETなら誰が書いたコードでもそれなりに理解できるが アホがVB6で書いたコードは何がどうなってるのか読むのが大変
925 名前:デフォルトの名無しさん [2007/07/03(火) 14:05:35 ] 2005のWindows.Formアプリで質問です。 DataGridViewのコンボボックスカラムを使用してデータを選択させています このデータはDataSourceで指定されたデータを使用しています。 問題はこの後で、データの文字がセルの幅を超える場合、ドロップダウンが表示されたときにすべて表示されない状態になっています。 オーナードローすればいいんでしょうが、幸いDropDownプロパティがあるのでこれを使いたいと思います。 このとき、普通であれば表示させるデータをなめてMeasureStringで最大幅を設定するのでしょうが データ取得に時間がかかりデータ数が多いこともあり、できるだけループで回すようなことをしたくありません。 もし何か回避する方法があるのであればお教え願えませんか? もし無いのであれば諦めてデータをなめて最大幅を設定しようと思います。
926 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 14:24:00 ] >>925 AutoSizeMode = AllCells でいいんじゃない?
927 名前:デフォルトの名無しさん [2007/07/03(火) 14:31:51 ] >>926 あ〜そういう手がありますね 早速やってみたところドロップダウンが奇麗に表示されました。 長い文字を選択するとセルのサイズ変わっちゃうけど、まぁこれはこれで取りあえず置いておいてつづけようかと思います。 (Keyの項目なので表示しきる必要はあると考えて) 回答ありがとうございました。
928 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 05:41:03 ] ところでおまいら少し安め。 ベンジャミンフルフォード 「日本はここから侍のこころを取り戻そう!」 www.harmonicslife.net/PodCasts/2006/Yumi20061013Podcast_911Fulford.mp3
929 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 18:07:03 ] 文字コードの自動判別ができるのはどのバージョンのVB.NET?
930 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 18:20:07 ] むしろその日本語ってどんなバージョンだよw 頭おかしいんじゃねえの
931 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 20:38:56 ] 多分それができるころにはVBはなくなってると思う
932 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 22:10:25 ] C:\WINDOES\fontsのなかにあるEUDC.TTEをローカル(C:\copy)にコピーしたいんですが、 System.IO.File.Copyを使ってもwindowsに変な影響出たりしませんか?
933 名前:デフォルトの名無しさん [2007/07/04(水) 23:39:43 ] DatagridViewでデザイン時にカラムを追加してPropertyName設定してテーブルをバインド ↓ データソースの中身Dispose+Nothing ↓ 同じ構造の別テーブルをDataSourceにセット ↓ 最初にデザイナで追加しておいたカラムがDataGridViewのColumnsから消えてる ( ゚Д゚)ポカーン 気付くまで30分かかったw
934 名前:932 mailto:sage [2007/07/05(木) 09:36:36 ] 自己解決しました。
935 名前:932 mailto:sage [2007/07/05(木) 12:26:34 ] ↑って誰ですか? 解決してないんですけど
936 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:35:11 ] >>932 削除とかならまだしも、普通にコピーとるだけなんだろ?なにを心配してるんだ? 馬鹿らしくてみんな答えないだけだよ。 というか自分で試せることだろ? 心配なら復元ポイントでもつくってやってみろ。
937 名前:デフォルトの名無しさん [2007/07/05(木) 13:18:45 ] >>936 こういう馬鹿は試しもせずに聞いてくるからたちが悪い 失敗から学ぶことのほうが多いというのに
938 名前:デフォルトの名無しさん [2007/07/05(木) 19:27:17 ] コンポーネントってデザイナでフォームじゃなくなんか下の方に置かれるじゃないですか? カスタムコンポーネントを作ろうとした場合、どうやってフォームの情報を取得するんですかね?
939 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 19:29:12 ] Containerをフォームの型にキャストすればいいんだけど そうするとコンポーネントとして分離した意味がなくなるからそういうのはダメ
940 名前:デフォルトの名無しさん [2007/07/05(木) 19:45:04 ] ぇぇー、ダメって、例えば貼り付けるだけでフォームの特定のコントロールにほにゃららな 機能を追加するってようなのもダメぇ?コントロールをカスタムるより楽じゃん?
941 名前:デフォルトの名無しさん [2007/07/05(木) 20:15:37 ] OSのGUIを使わず、アカウントがビルドインユーザ であるかそうでないか判断する方法しっている方 いましたら、教えて欲しいです。 Visual Basic .NET プログラムで実装します。 コマンド、Win32_API 、レジストリ、WMI でもかまいません。
942 名前:デフォルトの名無しさん [2007/07/05(木) 20:20:07 ] いや・・・いろいろ方法ありますよ
943 名前:941 [2007/07/05(木) 22:20:28 ] ちょっと文章がおかしかったっす Visual Basic .NET プログラムで実装します。 クラスライブラリ、コマンド、Win32_API 、レジストリ、WMI どれか1つでかまいません ということです
944 名前:941 [2007/07/05(木) 23:02:18 ] 自己解決しました。
945 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:14:09 ] >>940 どうやんのそれ プロパティで対象のコントロールを直接指定するの? それなら>>938 みたいなことをする必要は全くない フォームの特定のコントロールを勝手に参照したら そのフォームに依存してしまうだろ
946 名前:デフォルトの名無しさん [2007/07/06(金) 02:50:00 ] >>941 なに使ったの? 俺は調べきれなくって 時間なかった時だったんでNetUserEnum 使ったんだが
947 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 04:01:19 ] WindowsPrincipal じゃね?
948 名前:デフォルトの名無しさん [2007/07/06(金) 06:31:03 ] Objectクラスの MemberwiseClone メソッドについて教えてください。 これで Clone を作って調べてみると、 cntrlClone = DirectCast(cntrl.MemberwiseClone, コントロールのタイプ名) ここで、元のオブジェクトインスタンスと別ものらしいこと cntrlClone IsNot cntrl は True はわかったのですが、Control でこれを使って作ったCloneを操作すると、 元オブジェクトのインスタンスが操作されてしまいました。 この cntrlClone の Size や Location を変えると、元の cntrl が動いてしまい、 cntrlClone の方は該当の場所には現われてすら来ませんでした。 MemberwiseClone メソッドで作成されるCloneというのは、どういうものなのか 今一よくわからず、これは別のインスタンスを完全に別ものとして作成するのでは ないということでしょうか、あるいはまた扱い方に問題があるでしょうか。 よろしくお願いします。
949 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 06:51:01 ] >>948 MemberwiseCloneは直接のメンバーのコピーしかしない。 メンバーとして参照型のオブジェクトを持っていた場合は参照しかコピーされないので コピーされたオブジェクトは同じ子オブジェクトを参照することになる。
950 名前:デフォルトの名無しさん [2007/07/06(金) 07:16:55 ] >>949 その 「メンバー」 の意味するものとは、元オブジェクトのフィールドのことですよね、 しかし、Clone 自体のインスタンスは、明らかに、元オブジェクトのインスタンスとは 別物になるはずですよね? それが、cntrlClone と cntrl が別ものとして cntrlClone IsNot cntrl は True とはなっているのに、cntrlClone を操作すると、どういうわけか、cntrl が動いて しまうようなのです。cntrlClone と cntrl の両方が画面に現われるかと思っていると 片方しか現われないのです。つまり、cntrlClone はで来ていないかのように見える のです。 こういうことはおかしいように思うのですが、よくわからないのでした。
951 名前:デフォルトの名無しさん [2007/07/06(金) 07:20:06 ] それとも、cntrlClone への操作が、自動的に cntrl 側にも同時に伝わってしまって 同時に2つとも同じ操作の対象になってしまっているのでしょうか?? まさかそういうことはちょっと信じられないのですが・・・。
952 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 07:37:17 ] class B { public int Ope() { .. } } class A { B b = new B(); public int Ope() { return b.Ope(); } } こういう構造ならいくらAのクローンを作ってもBはひとつ。 a もクローンa もインスタンスは違っても共通の動作になるだろ
953 名前:デフォルトの名無しさん [2007/07/06(金) 07:54:52 ] >>952 そのおっしゃってることの意味は>>949 の意味かと思いますが、 画面にすでに cntrl があった場合に、>>948 のように cntrlClone = DirectCast(cntrl.MemberwiseClone, コントロールのタイプ名) のようにして作成した場合、実体として cntrl と cntrlClone は別モノで、 別々のコントロールとして作成されるとすれば、 cntrlClone.Top = cntrlClone.Top + 10 と操作したら、cntrl の Top が +10 してしまうのはおかしいのではないかと・・・ それとも、cntrl が何かの派生であった場合、Baseクラスに対しても Clone を 別に作成しないといけない、というようなことなのでしょうか?まさか
954 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 08:13:15 ] Windows.FormsのFormやらButtonがどういう構造になってるかは知らんが、 実体はWin32のアンマネージドリソースなんだから、 SizeやらLocationやらは毎回Win32のリソースに問い合わせてる可能性が高いぞ。 そうなると両方のオブジェクトが同じハンドルのWin32リソースを操作するわけだから 同じになるのは当然だろ。 ICloneable.Cloneが実装されてないのに、中身もわからないクラスのクローンを作るのは 無謀だと思うぞ。
955 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 08:19:32 ] >>953 既に954が書いてるし、俺はあまりWin32に明るくないんだけど、 要するに、例えばFormにTextbox1があるとして、Form上に見えている テキストボックスはTextbox1そのものではなく、「Textbox1が内部にもっている何物か」 に過ぎないということなんでしょう。 それなら話の辻褄あうでしょ。
956 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 08:44:23 ] >>954-955 どうもです、やっぱり cntrlClone = DirectCast(cntrl.MemberwiseClone, コントロールのタイプ名) ・・・[1] で コントロールの別実体の Clone が作れると思わない方がいいでしょうか? ICloneable.Clone については、 www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?forum=7&topic=27051 なども参照してみて実装してみたりしてますが、この使い方では結局 Clone の作成は [1] でやっているんですよね。 普通に最初から New でコンストラクトして、必要なフィールドなどを値でコピーして 地道に作成するほかないでしょうか。そうなると、 MemberwiseClone の利用方法が 今一不明になるわけですが・・・どうもよくわかりません
957 名前:デフォルトの名無しさん [2007/07/06(金) 08:48:58 ] >>956 あっ、これ書いてみて今気がつきましたが、この参照サイトにあるのは [1] ではなく、 Dim hWankuma As WankumaData = DirectCast(Me.Clone(), WankumaData) ・・・ Private Function Clone() As Object Implements System.ICloneable.Clone Return Me.MemberwiseClone() End Function となってるところが違うのか・・・、もしかしてこれでしたか?ちょっとやってみます。 だとしたら自分の使い方のミスですね。飯食ってからやってみてまた報告します。 どうもでした。
958 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 09:41:34 ] ああ、くそう ここで交わされる会話がスラスラ理解できるようになりたいw
959 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 11:14:28 ] たいしたこと言ってないから
960 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 12:36:43 ] >>956-957 なんか書いてること読むと基本が理解できてない感じ。 自分でクラス作れない人? だったら場当たり的な「調べ方」では永遠に埒あかないと思うよ。 少なくともクラスと構造体の区別が理解できていれば、 フィールドの値(オブジェクトのメモリーイメージ)だけ複製しても 無意味な場合があることはすぐ理解できるはず。
961 名前:デフォルトの名無しさん [2007/07/06(金) 12:58:22 ] >>960 うーん、おっしゃってることは分ってるつもりですが、 要はコントロールの複製を作るにはこういうメソッド使えない ということでしょうか? もし使えるとしても、では後何をどうすれば複製を作成できるようになるでしょう? 毎回、Newでコンストラクトして作成して、それにフォールド値をいちいちコピーする やり方では、クラスをバージョンアップしてフィールドが増えたりするたびにそこに 手を入れる必要があるので忘れやすく、そういうことを防止するためにはこのメソッドを 使うほうがいいという感じで書いてあるところが多くあるかと思います。 では、現実の実体としてコントロールをこのメソッドも使って複製したい場合、 どれとどれとどれのどのような手続きをへて可能になるのか、それが知りたいのですが、 現状の知識ではわかりません。またそうした使い方をして説明してあるサイトが見つからない のです。 ちなみに、当然というか、>>957 で試してみてもやっぱりだめでした。まー同じことだろうとは 思ってましたが、やっぱりその通りでした。
962 名前:デフォルトの名無しさん [2007/07/06(金) 13:03:03 ] >>954-955 のご指導もありましたが、もしオブジェクトの実体を指すインスタンスが 別途にできていないのだとするとそういうことになるのかもしれませんが、 しかし、たとえフィールド値のコピーだけだとしても、そうだとすると、コントロールの 実体を指すプロパティが他にあって、それのCloneを作成する必要があるということ でしょうか? もしよろしければ、その辺をご指導いただけますか?
963 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 14:27:19 ] >うーん、おっしゃってることは分ってるつもりですが、 ダウト >コントロールの 実体を指すプロパティが他にあって、それのCloneを作成する必要があるということ >でしょうか? 大雑把にいうと Control -> NativeWindowクラスのプライベートフィールド-> IWin32Window(Win32ハンドルのラッパ)-> アンマネージドの世界 素直にICloneableを実装して必要なフィールドを自力で埋めろ、ってこった。
964 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 15:21:46 ] 意識的に自分で使ってるプロパティだけ新しいオブジェクトに移せばいいだろ コントロールなんて大概「同じもののように見える」で十分 手軽にできるようにしたかったら, コントロールの初期化をラップしといて簡単に再現できるようにするとか
965 名前:デフォルトの名無しさん [2007/07/06(金) 15:28:26 ] >>963 どうもです。 おっしゃてることは、ですから、要するに、 >>957 の Private Function Clone() As Object Implements System.ICloneable.Clone Return Me.MemberwiseClone() End Function の中の Return Me.MemberwiseClone() は使えません(>>961 の通り)ということで、 全部毎回フィールドを自分で世話するという、以前からある手法でやるほかない、 ということなのですね。 つまり、少なくともコントロールに関するかぎり、 MemberwiseClone() は有効にはならず 利用できない、ということで納得するほかないと・・・。わかりました、ということはせっかく MemberwiseClone() というメソッドが継承されていても、使えないメソッドなのだという ことなのですね、少なくともControlクラスにおいては。 ではやはりそのようにするしかなさそうですね。ご指導感謝します。
966 名前:デフォルトの名無しさん [2007/07/06(金) 15:29:58 ] >>964 同様のご意見ということで、わかりました。無理そうなので 結局そういう感じでやることに致しました。
967 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 16:42:48 ] >Dim hWankuma As WankumaData = DirectCast(Me.Clone(), WankumaData) Wankumaってここを見たんだろうけど、 blogs.wankuma.com/jeanne/archive/2006/04/06/22272.aspx blogs.wankuma.com/jeanne/archive/2006/04/07/22287.aspx ICloneableの実装の説明としてみると例えとして変なので軽く理解したら他をあたったほうがいい。
968 名前:デフォルトの名無しさん [2007/07/06(金) 17:03:04 ] ADO.NETでウィザードを使ってデータベースに接続したり,コントロールに連結したりした アプリケーションを配布する場合,データベースへのパスがユーザによって変わってくる と思いますが,どこでConnectionStringの変更を指定したらいいのですか? 具体的には,ウィザードを使うとFormのRegion〜EndRegionの間にOledbConnectionに関する 記述がありますが,配布した時に最初にデータベースの位置をユーザが指定して,それを レジストリに書き込みたいのですが,それに関する記述はどこに書いたらいいでしょうか? Form_Loadですか?
969 名前:デフォルトの名無しさん [2007/07/06(金) 18:49:34 ] CheckdListboxコントロールの継承に関して質問です。 このコントロールの中にあるItemsにAddやRemoveなどのコマンドがありますが、 こちらを継承、もしくはItemsにメンバー変数などを追加するには どのようにすれば良いのでしょうか? やりたい事は、CheckdListboxコントロールは、主にItemsの「Index、item、Checked」と 三つの情報を取り扱いますが、こちらに一つ追加したい。 現状は、CheckdListboxコントロールの継承クラスに、メンバーを追加して、 ItemAdd とか ItemRemove とかを作って無理やり実現させています。
970 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 18:50:50 ] >>945 ヒント:ErrorProvider
971 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 22:52:48 ] >>969 継承についてもっと勉強してください。 あなたの考えてることは不可能です。
972 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 23:02:22 ] >>971 その前に君969の言ってることがわかるの? 俺にとっては>>969 の文章はサッパリ理解不能なんだが。 きっとエスパーなんだね君は。 自分の勝手な想像と書いてあることの区別がつかない痛い奴でなければ。
973 名前:デフォルトの名無しさん [2007/07/06(金) 23:38:51 ] >>972 は自分でさっぱり理解不能な場合、答える人は 全てエスパーに見えるらしい。 …あ、釣りですか。そうですか。
974 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 23:43:46 ] いや釣りじゃなくて嫌味ね。 しかし、嫌味が通じない人間の人生ってきっとさぞかし「楽しい」んだろうな。 おっと、この人嫌味が通じないんだったなw
975 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 00:14:44 ] くだらね。
976 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 00:54:58 ] なんか最近.net関連のスレに気違いが混じってるなぁ
977 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 00:56:52 ] 「釣りですか」というのが嫌味だと理解できなかった可哀相な人がいるスレはここですか?
978 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 01:01:31 ] そういや「全てエスパーに見えるらしい」ってもの嫌味の部類だよなあ 通じなかったみたいだけど。
979 名前:969 [2007/07/07(土) 09:52:05 ] 自己解決しました。
980 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 10:09:52 ] >>932 がさっきから腹いせにスレを荒らしている件
981 名前:デフォルトの名無しさん [2007/07/07(土) 10:26:25 ] フォォムのLoad中〜Load完了までの状態を判定するにはどうすればいんですかね? Visible=False Then じゃなんとなくダサいんですが
982 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 10:49:43 ] だれが判断したいわけ?
983 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 12:29:48 ] >>982 入社2年目のプログラマーです
984 名前:デフォルトの名無しさん [2007/07/07(土) 13:01:08 ] 自作コントロールのItemプロパティを作成したんだけど 出来ればデザイン時に項目を設定できるようにしたいんです。 確かシリアライズ出来るようにしなければいけないと思ったんですが ちょっと情報が探せませんでした。 ご存知の方簡単で構いませんのでお教え願えませんか?
985 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 13:18:26 ] >>984 ん?propertyになっているなら、デザイン時に設定できるだろ?
986 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:08:17 ] >>984 悪いけど酷い日本語だなあ。何が言いたいのか意味わからんよ。 なので推測で答えるけど、プロパティグリッドで独自のUIを使いたいってことなら 多分ここの記事が参考になると思う。 www.comrade.co.jp/component/dotnetroom/index.htm
987 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:18:56 ] デザイナまで作ろうってんじゃなくて単にプロパティウィンドウに出したいだけじゃねぇの? BrowsableAttribute属性付けるだけでいいレベルじゃないのか。
988 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:25:21 ] プロパティグリッドが俺やアンタの作った俺様コレクションの俺様アイテムの 編集方法を理解できるわけないでしょアホか。
989 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:52:08 ] 日本語云々に拘っている変な人がいるよね。
990 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 16:09:18 ] 向こうで書きにくくなったJittaが暴れているんだろ。
991 名前:デフォルトの名無しさん [2007/07/09(月) 12:13:11 ] VB2005で、IEのプロキシを設定したいのだけど、コマンドがわかりません。 教えていただけませんでしょうか。
992 名前:デフォルトの名無しさん mailto:sage [2007/07/09(月) 12:17:34 ] >>991 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings のProxyServerの値をVBでいじればいい
993 名前:デフォルトの名無しさん [2007/07/09(月) 12:18:17 ] >>991 どんな方法で設定するのか知らないけど HKEY_CURRENT_USER\…\Internet Settings このレジストリいじるのじゃなくって別の方法?
994 名前:デフォルトの名無しさん mailto:sage [2007/07/09(月) 12:45:49 ] >>981 普通に書けば、メンバ変数 Private m_loaded As Boolean = False とプロパティ Public ReadOnly Property Loaded() As Boolean Get Return m_loaded End Get End Property を持たせておいて、OnLoadで Protected Overloads Overrides Sub OnLoad(ByVal e As System.EventArgs) MyBase.OnLoad(e) m_loaded = True End Sub でいいと思いますが。 >Visible=False Then じゃなんとなくダサいんですが Boolean値をリテラルと比較するのは「ダサい」というより「間抜け」ですね。 >>988 >俺様コレクション かどうかは判りませんが、それが既知の型の配列であれば 何もしなくともプロパティグリッドに表示されますね。 まあ、そうならないから質問してるんでしょうけど。
995 名前:991 [2007/07/09(月) 22:15:08 ] >>991 、>>992 さっそく、ありがとうございました。 とても参考になります。 まだレジストリをいじったことがないので、 まずはレジストリのいじり方を調べてみます。
996 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 09:25:38 ] h
997 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 09:26:07 ] t
998 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 09:26:42 ] t
999 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 09:27:11 ] p
1000 名前:小倉優子 ◆en0rG2J.f6 mailto:sage [2007/07/10(火) 09:28:10 ] 1000ならジュースでも飲むか
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。