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


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

VB.NET質問スレ (Part17)



1 名前:最凶VB厨房 mailto:sage [2006/08/11(金) 19:40:44 ]
[前スレ]VB.NET質問スレ (Part16)
pc8.2ch.net/test/read.cgi/tech/1149432480/

137 名前:89 mailto:sage [2006/08/22(火) 22:26:52 ]
>>120
button2押しても止まらないときがあるような・・・

>>135
スロットっぽくしたいんじゃないの?

ちなみに俺が言いたかったのは、Timer1_Tickで
Do
a = CInt((52 * Rnd()) + 1)
b = CInt((52 * Rnd()) + 1)
Loop Until a <> b
Label1.Text = a
Label2.Text = b
まぁ、選びなおしは停止するタイミングでやった方がいいかもね

138 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 22:54:52 ]
>>137
「同じだったら止まらない」仕様通りでは?

139 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 00:04:39 ]
なあ、俺の思い違いだったらいいんだが。

スロットって回転してる間は、別に表示してる値の評価なんてしなく
てもいいんでないか? ストップボタンを押した時に、初めて表示さ
れてる値を比べて、当たり外れを付けるもんだろ?

140 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 00:06:05 ]
誰が比較して当たり外れを付けろと

141 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 00:17:12 ]
例え確立やタイミング的に大丈夫でもTimer内でLoopは嫌だな。俺は。
それはさておき、
> まぁ、選びなおしは停止するタイミングでやった方がいいかもね
を考えてと、質問者のやり方に近い作りにすると、たったこんだけ。効率とか他の仕様とかコーディングポリシーとかは無視して。
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
hoge()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Timer1.Enabled = True
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Me.Timer1.Enabled = False
Do Until Me.Label1.Text <> Me.Label2.Text
hoge()
Loop
End Sub
Private Sub hoge()
Me.Label1.Text = CInt((52 * Rnd()) - 1)
Me.Label2.Text = CInt((52 * Rnd()) - 1)
End Sub

要は質問の仕方の悪さで長引いただけだと。

142 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 00:52:40 ]
ここは
 値型と参照型
 値の代入と参照の代入
の区別がつかないヒドイ言語ですね

どうしてこのような言語仕様になっているか
エロイ人教えてください。

143 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 01:06:29 ]
何処の受け売り?

144 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 01:22:48 ]
>>142
またC++の悪口か

145 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 01:36:58 ]
ところでスロットを作りたいのでなければ何を作りたかったのだろうか



146 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 08:30:41 ]
> スロットを作りたいのでなければ
同じ数値を排除したいって言ってるので最初っからスロットなんて考えられないのに。

147 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 09:41:41 ]
>>84でスロットという言葉が出ているんで仕方ないんでないか?

148 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 10:23:10 ]
絶対に当たらないスロットを作って稼ごうとしたのでは

149 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 10:59:17 ]
Datagridviewをコード内で作成したDataTableにバインドして利用しようとしています。
データを表示するまでは可能なのですが、DataTableにデータを追加してもDatagridviewが更新されないで
表示が固まってしまいます。再描画?か何かが必要なのだと想像するのですが、分かりませんでした。
InvokeとかBackgroundworksなどを使うと良いとはあったのですが、理解できませんでした。
どのように処理すれば良いのでしょうか?よろしくお願いします。

(こんな感じのコード)
Dim ds as Dataset
Dim dt as Datatable
Dim bind1 As BindingSource

Sub form1_load() Handles MyBase.Load
ds.Tables.Add(dt)
dt.Columns.Add("column1", GetType(String))
(以下略)

bind1.DataSource = dt
Datagridview1.DataSource = bind1

End Sub

Sub test()

Dim Row as DataRow
Row = dt.NewRow
Row(0) = "a"
Row(1) = "b"
dt.Rows.Add(Row)

End Sub


150 名前:デフォルトの名無しさん [2006/08/23(水) 11:50:22 ]
テキストファイル読み込みは
textfieldparserとstreamreaderどっちを使ったらいいの?

151 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 12:35:59 ]
読んで字の如く

152 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 12:55:37 ]
>>150
中身による。

153 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 16:40:42 ]
>>151-152
textfieldparser
テキストの分野の解析?
streamreader
流れながら読む?

csvとかにはtextfieldparserで
通常はstreamreaderってことですかね


154 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 17:00:05 ]
>>153

>>2
MSDN
msdn2.microsoft.com/ja-jp/library/ms229284.aspx

textfieldparser
>構造化テキスト ファイルの解析に使用するメソッドとプロパティを提供します。

streamreader
>特定のエンコーディングのバイト ストリームを読み込む TextReader を実装します。


とりあえず、読んだ方がよいかと。

155 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 21:38:07 ]
Do-Loopキモイ。



156 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 21:42:09 ]
乗り遅れ突っ込みもキモイ

157 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 23:33:27 ]
うそつきはDoLoopのはじまり

158 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 08:10:35 ]
>>154
おお、ありがとう。

159 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 09:19:11 ]
最近はMSDNすら見ないのか・・・・・

160 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 11:32:50 ]
ここの議論はいつも Do Do めぐり。

161 名前:デフォルトの名無しさん [2006/08/24(木) 17:51:13 ]
homepage1.nifty.com/rucio/main/dotnet/shokyu/index_sta.htm

ここ見ながら勉強してるんだけど、
graphicsで描写したものを消すにはどうしたらいいの?

一度最小化するとかってのは無しで・・・。

162 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 17:56:05 ]
無限ループしたらパソコン壊れますか?

163 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 18:41:08 ]
デルノートなら爆発もありうるな

164 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 19:05:46 ]
>>161
Invalidate

165 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 21:06:59 ]
VB2005の解説サイトで良いところありませんか?

Cなんかは簡単に見つかりましたが、
VBではテンプレみてもどれがいいのか、
何を書いているのかほとんどわかりません。
>>161みたいなものがいいのですが、
あまり体系立った説明がされていない
(後回し後回しで要点がつかみ難い)
のでわかりにくいです。

具体例を用いてあると尚良いのですがどこかありませんか。



166 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 21:23:36 ]
>>165
>>3-5

167 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 21:49:23 ]
テンプレみてもどれがいいのか
何が書いてあるのかほとんどわかりません…
ある程度基本が身に付いた人であれば
知りたい情報はどこにあるか見当もつけられると思うのですが
現時点では>>3-5のサイト一通り巡回してもわけがわかりませんでした。
あと、関係ないのも多数混じっていませんか?


168 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 21:55:17 ]
>>164
さんくす。でも具体的な使い方はどうやればいいの?
MSDNで検索したけどワカラン

たとえば
ボタン1をクリックしたらピクチャーボックス1に黒い円が浮かび上がって
ボタン2をクリックしたらその円が消えるようなプログラムは
どうする?

169 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 22:11:53 ]
>>168
背景色で塗りつぶしたらよかんべえ




170 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 22:13:46 ]
>>167
「あまり体系立った説明がされていない」なんてえらそうなこと言う
前に、まずどこでもいいからひとつでも全部通して読むべきだよ。い
まの「どこがわからないのかわからない」状態から脱したいならね。

171 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 22:16:16 ]
だるまの目を塗りつぶしたいんだけど、
背景色で塗りつぶすとだるまも消えちゃう・・・。
だるまも再表示するようにしても、うまくいかないのよー

172 名前:161・168・171 mailto:sage [2006/08/24(木) 22:19:12 ]
↑は>>169宛です

173 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 22:20:00 ]
>>167
体系立った説明が欲しいなら、仕様書。これ。
msdn.microsoft.com/library/ja/default.asp?url=/library/ja/vbls7/html/vbSpecStart.asp

>>171
逆に考えるんだ
描画したものを消すと考えるんじゃない
描画したものの上から黒眼/白眼を書けばいいと考えるんだ

174 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 22:36:10 ]
>>173
ありがと。考え方は理解できた。
でもだるまの目の部分よりも、塗りつぶす黒目が大きい場合はどうしたらいいの?

175 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 01:17:25 ]
buttonの名前をいじってて
cancelbuttonにしたらエラーが多発してデザイン画面が出てこなくなった・・・。
いったん他の名前に変えて難を逃れたんだけど、
もともとのデザイン画面がでてこない・・・。
表示タブのデザインっていうの選んだらデザインタブでてくるよね?
再起動してもでてくるよね?

・・・出てこない。
・・・オワタ?



176 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 02:01:48 ]
自分でデザイン部分のソース修正。

177 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 02:11:22 ]
>>175
CancelButtonとかAcceptButtonは地雷。つかプロパティ名とかぶるのでそういうことになるよ。
フォーム名.Designer.vbをごりごり修正。

178 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 08:38:42 ]
FlexGridで処理後に次の行特定の列を選択した状態にしたいのですが、
選択するとそこがboolreanで勝手にチェックがはいってしまいます。

FlexGrid.cols(4).type=boolrean
FlexGrid.select(3,4)

初歩的だと思いますが何か設定があるのでしょうか?

179 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 09:18:23 ]
boolrean

180 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 12:10:23 ]
DataGridViewの中にコンボボックスをいれたいんだけどどうすんの?

181 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 12:33:00 ]
いれればいいじゃん

182 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 14:45:26 ]
それがわからんのです(´;ω;`)ブワッ

183 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 14:54:09 ]
DataGridViewの、コンボボックスにしたい列をコンボボックスにしてあげればいいと思うよ。

184 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 15:03:14 ]
そのままやんけ!って思ったけどそのままやったんですね。
できました。どうもありがとうございます。<(_ _)>

185 名前:178 mailto:sage [2006/08/25(金) 18:36:20 ]
自分で解決できました。
ただ単にarrolweding=falseにするだけでした。



186 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 20:29:54 ]
arrolweding

187 名前:チョ初心者 mailto:sage [2006/08/25(金) 21:02:24 ]
クラスにテキストボックスそのものを渡して
キーコードに応じて処理をしてテキストボックスの中身を変えて戻す
そうゆうのって問題なしですか?


188 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 21:35:09 ]
それにキモさを覚えなければ問題ないが、
それにキモさを覚えないのには問題があるな

189 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 21:42:37 ]
>>187
そうしたい理由や手順をフローにして書いてみそ。
もっと洗練されたやり方があるかもしれない。

190 名前:デフォルトの名無しさん [2006/08/25(金) 22:46:28 ]
助けてください。いろいろ調べたのですが、うまく出来ません。

参照の循環する依存関係で苦しんでます。
同じソリューションの別プロジェクトの画面遷移をしたいです。
スタートアップのA画面からB画面へ、そしてB画面からA画面へ
戻る遷移になります。つまり、相互遷移です。
B画面が開いたら、A画面は閉じるのが条件です。
で、双方のプロジェクトに参照設定を試みました。
下記の図です。
ソーリューション
 |
|-プロジェクトA
参照設定(FormB.dll)
   FormA
|-プロジェクトB
   参照設定(FormA.dll)
FormB
当然ながら、循環参照でエラーとなります。

基礎的な事でしょうが、
まだ、開発経験が浅く、どう調べていいかがわかりません。
ヒントなりもといただきたいと考えております。
よろしくお願いします。

191 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 22:53:26 ]
流れを管理するプロジェクト C を作って、C が AB を参照。
AB は他は気にせず自分の事だけやればよい。

192 名前:190です。 [2006/08/25(金) 22:54:28 ]
書き残しました。
共通部分をクラスライブラリとして括り出して、それを参照する
とういう方法論までは、わかったのですが、
そこから先がわかりません。
下の図のように、新プロジェクトを作成し、
そこで、イスタンス化を計ったのですが、
やはり、循環参照でエラーになります。
ソーリューション
 |
|-新プロジェクト
参照設定(FormA.dll,FormB.dll)
classA
|
 |-プロジェクトA
   参照設定(classA.dll)
   FormA
 |-プロジェクトB
   参照設定(classA.dll)
   FormB

193 名前:デフォルトの名無しさん [2006/08/26(土) 01:00:09 ]
っていうか、プロジェクトとか、クラスライブラリを参照するってことの意味を
何か勘違いしているような。。

いやそれ以前にクラスって概念からしてわかってないんじゃねえの?
フォームなんてハリボテに過ぎないもの、推移とかいったって所詮
表示したり消したりするだけのことなのに、いちいち画面ごとにプロジェクト分ける気か?

194 名前:187 mailto:sage [2006/08/26(土) 03:12:35 ]
>>189
遅くなりましたが…
理由は入力チェックをクラスで纏めたい為です。
・エスケープなら指定オブジェクトへフォーカスを移す。
・リターンなら種類によってコードチェック
次のオブジェクトにフォーカスを移す。
・入力ミスならエラー表示をする。
と、そんな感じにしたいのですが
フォーカス指定と入力テキストボックスで3つもオブジェクトを渡すのってマズいのかな…と

先生方、もっとカコイイやり方があれば是非ご教授下さい
始めたばかりで、クラスとかもよく分かってないですが…(つД`)


195 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 03:27:21 ]
>>194
単にチェック&エラー表示したいだけならErrorProviderがお手軽だけど。



196 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 03:57:15 ]
過去に既出であったり、王道があれば教えてください。

WMPのように、多重起動せず受け取ったコマンドラインを
すでに起動している同じソフトに送信するのに
・APIのSendMessage GetMessege
・APIのSetProp GetProp
・127.0.0.1でSOCKET
・変数のポインタをどっかのファイルに書き込むorレジストリでそこを読んで 改変
・特定のファイルorレジストリでそこを監視
・.net新規のものでもっといいのあるよ〜

受け渡しは前述の通り、文字列だけです。
使用バージョンは VB.net 2005です。
これらの中で”一般的にはこれ”等あればご教授お願いします。

197 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 05:27:20 ]
>>196
プロジェクト−プロパティ−アプリケーション「単一インスタンスのアプリケーションを作成する」。VB専用。

名前つきMutex(System.Threading.Mutex)を使う。C#でも可能、データの受け渡しは不可。


198 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 05:30:58 ]
>>196
あとは、.NETリモート処理を使う方法もあるが、実例はあまり見たことがない。
.NET 2.0で追加されたIpcChannelが9x系ではエラーになるなど問題が多い。

199 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 07:42:50 ]
Formにスナップ機能?winampのように他のウィンドウや画面の端にくっついたりするにはどうすればいいですか?
教えてください。お願いします。

200 名前:190です。 [2006/08/26(土) 11:55:03 ]
>>193
すいません、正直、あまり、わかっていません。

動きは全て、仕様です。
Formの開閉時に、DBに接続して、Select,Update,Insertを
行う仕様になってます。

201 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 12:02:46 ]
>>197-198
どうもありがとうございます。

単一インスタンスにすると2重起動時、
Loadなりなんなりで
後から起動したほうを終了して、
普通に宣言してある変数の内容を書き換えるだけで
すでに起動していた側からその変数を見たら変更されてて
この目的なら万事おk ってことですよね?

とりあえず試してくるw

202 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 12:11:29 ]
そんなことしなくても後から起動されたほうは勝手に終了する。
先に起動してた方のMy.Application.StartupNextInstance イベントのパラメータに
後から起動したコマンドラインが渡されるので後はお好きなように。
つーかMSDN嫁。

203 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 12:17:23 ]
>>202
そんな楽にできるのかw
MSDNじっくり読んできます〜
マジありがとう。

204 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 12:20:32 ]
>>200
>>191さんが書いてるのは仕様に外れるからダメってことか?

205 名前:149 mailto:sage [2006/08/26(土) 12:33:16 ]
その後色々と調べたところ、同じ症状の対策がでてました。

DataGridViewのスクロールバーがおかしくなる
ttp://dobon.net/vb/bbs/log3-26/15520.html


delegate void DataTableAddRowCallback(DataTable dt, DataRow dr);
private void DataTableAddRow(DataTable dt, DataRow dr)
{
if (dataGridView.InvokeRequired)
{
DataTableAddRowCallback d = new DataTableAddRowCallback(DataTableAddRow);
Invoke(d, new object[] { dt, dr});
}
else
{
dt.Rows.Add(dr);
}
}

//別スレッドから
DataTableAddRow(dataSet.Tables["TableName"], dataRow);


で、解決するらしいのですがC#はさっぱりで、VBに書き換えも撃沈しました。
どなたか、教えていただけないでしょうか。よろしくお願いします。



206 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 12:40:25 ]
>>195 遅くなりましたが、有り難う御座いました
こんな見易い便利なの物があるんですねーー
初めてみました(´Д`)
複数コード入力した後の最終チェックなんかに使ってみたいです


とはいえ、やはりコード入力がものすんごいあるので
フォームでのコード入力のところをごっそり省きたい……
やはり、オブジェクト渡してやっちまいまつ(゚∀。)

207 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 12:47:17 ]
>>205
>>149のコードを見る限りDataRowへのデータの追加を
別スレッドでやってるようには見えないんだが、そこんとこはどうなの?
同一スレッドでやってるんならリンク先の対策は役に立たないと思うが。

208 名前:149 mailto:sage [2006/08/26(土) 13:06:25 ]
>>207
すいません、そうでした。現在のソースはこのような感じです。仮想モードは使っていません。

  Dim ds as Dataset
  Dim dt as Datatable
  Dim bind1 As BindingSource
  Friend WithEvents Bg_main As System.ComponentModel.BackgroundWorker

Sub form1_load() Handles MyBase.Load
  ds.Tables.Add(dt)
  dt.Columns.Add("column1", GetType(String))
(以下略)
  bind1.DataSource = dt
  Datagridview1.DataSource = bind1
  Bg_main.RunWorkerAsync() '別スレッドへ
End Sub

Sub Bg_main_DoWork() Handles Bg_main.DoWork
  Row = dt.NewRow
  Row(0) = "a"
  Row(1) = "b"
  dt.Rows.Add(Row)
End Sub

Bg_main.RunWorkerCompleted で追加を検出してMe.Refreshでも固まってしまいます。DataGridViewで何かイベントがいるのかな。

209 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 13:13:30 ]
>>208
順序がおかしいな。
別スレッドで DataSet/DataTable にデータを突っ込む>元スレッドで DataSource に設定
だ。

> DoWork イベント ハンドラでユーザー インターフェイス オブジェクトを操作しないように注意する必要があります
と MSDN にあるが、 DataSource に設定済みの DataSet/DataTable への操作も UI の操作に当たる。

210 名前:149 mailto:sage [2006/08/26(土) 13:35:50 ]
>>209
レスありがとうございます。
頻繁に書き換えがあるので、左記にDataSourceを割り当てているのです。
実際には、スレッドは沢山あって、それぞれにDataDableを更新しています。

その更新結果を、DataGridViewにリアルタイムで表示しているのですが、スクロールバーが出ると固まってしまいます。
MSDNにはUIを操作するなと書いてあるのは知ってますが、リアルタイムでデータが流れてくるので、別スレッドに流し込まない
と処理が間に合わないのが現状でして。

表示自体は、RunWorkerCompletedにMe.Refresh()を入れれば改善はされるのですが、やはり触ると固まってしまいます。
そこで、色々調べたら>>205の症状と似ていたので。

205のソースは、いろいろと変更して入れて見る努力はしたのですが、そもそも知識不足で理解できませんでした。

211 名前:デフォルトの名無しさん [2006/08/26(土) 13:50:50 ]
だったらこんなところに質問している間に理解しようとすればいいのに。
この人に限らないけど、ダメな奴っていうのは基本的に努力の方向が間違ってるよ。

212 名前:149 mailto:sage [2006/08/26(土) 13:55:24 ]
>>211
C#のヘルプとか見ながら色々と試行錯誤しているんですけど、なかなか上手くいかなくて。。。。

213 名前:デフォルトの名無しさん [2006/08/26(土) 14:06:52 ]
いや、だからたぶんデリゲートとかスレッドがよく分からんのでしょ?
だったらまずそれを理解しろよ。でなきゃ埒があかん。小学生でもわかる理屈。
@ITとかCodeZineに解説あるし、別にたいして難しいもんじゃない。

214 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 14:15:37 ]
> スレッドは沢山あって、それぞれにDataDableを更新しています。
ってアンタ……


なんか色々絶望的だな

215 名前:149 mailto:sage [2006/08/26(土) 16:32:56 ]
Invokeを使ってもやっぱりかたまる。DataGridViewのイベント関係なのかも。


Delegate Sub DataTableAddRowCallback(ByVal dt As DataTable, ByVal dt_row As DataRow)

Public Class Form1

>>208と一緒

  Public Sub DataTableAddRow(ByVal dt As DataTable, ByVal dt_row As DataRow)
   If DataGridView1.InvokeRequired Then
     Dim d As DataTableAddRowCallback
     d = New DataTableAddRowCallback(AddressOf DataTableAddRow)
     Me.Invoke(d, New Object() {dt, dt_row})
   Else
     dt.Rows.Add(dt_row)
   End If
  End Sub

Sub Bg_main_DoWork() Handles Bg_main.DoWork
  Row = dt_temp.NewRow
  Row(0) = "a"
  Row(1) = "b"
  DataTableAddRow(dt, Row)
End Sub

End Class




216 名前:デフォルトの名無しさん [2006/08/26(土) 19:00:19 ]
ダメグラマが「固まる」って言葉が好きなのは法則か何かかねw

ダメグラマはなんでダメなくせになんでいきなり全部を完成させようとするんだろう。
そのくせ問題が起こると、「問題の切り分け」すらしようともせず、
全然見当違いのことを問題の原因だと思い込む。

もちろん彼はシンプルなコードを書いて、本当に彼が思っていることが
問題の原因なのか、確認しようともしない。

217 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 00:42:02 ]
510 :ワールド名無しサテライト:2006/08/26(土) 09:43:50.46 ID:8fm3vXed
「やっぱりVBが悪いんじゃないか。VBなんて」
「いいえ。全ては使い方しだい。私たちがVBの本当の使い方を見せてあげますわ。」

218 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 13:02:03 ]
スマートクライアント(リッチクライアント)についてサンプルが載ってる
本でいいのって無いですかね?

219 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 15:42:58 ]
ネットで見つからなければ本も期待できないと思ったほうがいい

220 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 18:49:09 ]
そっか、したら、もう少しネット浮浪者でがんばってみる。

221 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 01:05:59 ]
>>215
同じインスタンスなら、Invokeなんてまったく意味ない。

単にロジックがおかしいんだと思うけど、
ソースコピって一からデバッグしてくれる親切な人なんていないんだからさ、
もうちょっと、的を絞って質問できないか?

あとデータ量が多いならMSDN読んで作り直したほうがいいかもしれない。


222 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 02:02:42 ]
>同じインスタンスなら、Invokeなんてまったく意味ない。

( ゚д゚)



( ゚д゚ )

223 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 02:15:54 ]
こっちみんな

224 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 05:08:38 ]
みんな〜こっちこっち〜

225 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 16:07:38 ]
VB.NET2003でTabControlついてですが
デフォルトでは標準コントロールらしく味がありません。
これはデザインを変更することは可能ですか?



226 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 16:47:53 ]
継承して頑張ってみれば?


227 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 19:18:30 ]
>>225

つ VB2005
話はそれからだ。



228 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 20:39:13 ]
>>227
2005のはどんな感じですか?

229 名前:デフォルトの名無しさん [2006/08/28(月) 22:24:41 ]
私VB.NETの初心者です。
CopyMemory
の使い方が分からなくて、たまたま見つけた
ttp://www.winapi-database.com/System/Memory/CopyMemory.html
の例

Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" _
(Destination As Integer, Source As Integer, ByVal Length As Integer)

を試したらエラーしたので、二行目を適当に変更して

(ByVal Destination As IntPtr, ByVal Source As String, ByVal Length As Integer)

としたら無事動きました。
動いたのはいいのですが、これでいいのかどうかよく分かりません。
適当に勘で置き換えただけです。
それで質問なのですが、私が行った操作は、VBでは何という分野ですか?
こういうことに関してより詳しくなるためには、私は何を勉強すればいいでしょうか?
よろしく。


230 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 23:00:01 ]
>>229
自学して理解できない人が触ったらだめだよ。そういうAPIは。
つりじゃなくまじめに。
子供には早いって奴。

231 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 23:34:36 ]
>>229
P/Invokeだけど、
本当にCopyMemoryする必要があるの?
ライブラリ内で完結できるなら初学の頃はフレームワークの外にでるべきじゃない

232 名前:132:乱数君 [2006/08/28(月) 23:57:56 ]
やっと時間を持てるようになり、皆さんのご意見を参考にさせていただいて、まずは、タイマーを外しまして(出来れば、タイマーを使ってスロットのようにしたかったのですが、背に腹は代えられません)、思うような成果が得られました。
ただ、以下のコードをButton1_Clickに記入しているにもかかわらず、

Do
Label3.Text = Int((52 * Rnd()) + 1)
h = Val(Label2.Text)
i = Val(Label3.Text)
Loop Until h <> i

何のコードも記入していないはずのButton2をクリックした時に、上記のイベントが起きます。(Button1をクリックした時には何も起きません。)
これは何故なのでしょうか…?

233 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 00:14:13 ]
それは霊のしわざです

234 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 00:30:26 ]
>>232
半年くらいコーディングやめてバカンスにでも行ってきたら?
つーか何で>>141とかでダメなのかと。

235 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 11:08:42 ]
夏休みの宿題なんじゃねーの?



236 名前:232 [2006/08/29(火) 12:02:00 ]
>234
Private Sub 『hoge』
というツール?がよくわからなかったので、参照が出来ませんでした…
>235
リミットはありませんが、何とか時間のある夏のうちに完成させておきたいんです。

237 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 12:15:31 ]
>>236
> Private Sub 『hoge』
> というツール?がよくわからなかったので、参照が出来ませんでした…
これが仮に「釣り」ではなく真面目な回答なら、煽りでも何でもなく真面目な助言なんだが、
初心者向けの書籍を最低一冊は自分で購入して学習ないといけない。






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

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

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