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


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

VB.NET質問スレ(Part26)



1 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 18:07:34 ]
前スレ

VB.NET質問スレ(Part25)
pc11.2ch.net/test/read.cgi/tech/1203650042/

テンプレは2〜5くらいまでの間にある予定

136 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 04:10:18 ]
>>134
aspやったことないけど、そのレベルならVB中学校から始めた方が良い。
VB関連で2000円ぐらいで買える本よりはずうーっと親切だから。
一通り基礎が終わったらリファレンス本一冊あれば十分。

>>135
下三行の意味がわからない。

137 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 04:16:36 ]
select文でいいんじゃね?

138 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 04:38:56 ]
レスありがとうございます。

>>136

わかりにくくてすみません。

使い方のような説明をさせていただきます。
例えば、Label1に画像のファイル名が書いてあって、
そのファイルを1〜10まであるピクチャーボックスのどれに表示するかを
テキストボックス1に数字を入力して1ならPictureBox1に2ならPictureBox2に
という感じで表示させたいです。


139 名前:138 mailto:sage [2008/06/14(土) 04:39:22 ]
実際はそういう用途ではなくて、PictureBoxどうしのD&Dで画像を入れ替えたいのですが、
表示した手段があっていないのか、表示がされているのに
MouseDownイベント内の
PictureBox1.DoDragDrop(PictureBox1.Image, DragDropEffects.All)
を実行すると
Object reference not set to an instance of an object.というエラーが出てしまうため、
PictureBox1.DoDragDrop("1", DragDropEffects.All)
というようにして、どこの画像をドラッグしてきたのかということを1という数字で
渡すようにしました。

PictureBox1.DoDragDrop(PictureBox1, DragDropEffects.All)
という方法が出来れば良いのですが、そうすると
PictureBox2_DragEnterイベント内の
 If e.Data.GetDataPresent(DataFormats.*****) Then
e.Effect = DragDropEffects.Copy

の******の部分の書き方が分からないため使えないでいます。


>>137
Selectですとピクチャーボックスが沢山ある場合にCaseの記述がその数だけ
必要になってしまうので、簡単にしたいです。
(プロシージャをコピペで増やす際に中身を書き換えなくて済むようにしたいです。

140 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 05:01:14 ]
>>135
FAQだ。過去スレ見れば出てくると思うが、VB6にあったその機能はなくなった。
PictureBoxの配列を自分で作って必要なものを放り込め。

141 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 05:06:43 ]
System.Reflection

142 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 05:59:36 ]
Form.Controls("pictureBox1") という方法もあるが>>140のをすすめる。

143 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 06:16:47 ]
レスありがとうございます。
今回は配列の方法でやることにします。
ありがとうございました。

144 名前:134 [2008/06/14(土) 22:04:45 ]
>>136
ありがとうございます!
今見てますが、なかなか良さそうです
今の僕にピッタリかも



145 名前:デフォルトの名無しさん [2008/06/15(日) 02:03:26 ]
またお助けください。
Private Sub PictureBox2_DragDrop(ByVal sender As Object, _
ByVal e As System.Windows.Forms.DragEventArgs) Handles PictureBox2.DragDrop
のイベントの中で

PictureBox2の2という数字を文字列として取得したいのですが、どうすれば良いですか?


146 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 08:36:36 ]
"2"

147 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 09:17:49 ]
>>145
「2という数字」の意味が分からんがエスパーすると
sender.name.substring(10)
って意味か?

148 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 12:51:24 ]
それなら
sender.ToString.substring(10)
じゃないか?

149 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 15:49:20 ]
レスありがとうございます。
sender.ToString.substring(10) でできました。!
分かりにくい説明を察して頂きありがとうございました。

150 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 16:12:43 ]
作業管理表のプログラムを作成しています。

その中で、作業内容の登録時に
作業開始予定日が作業終了予定日より後の日付になっていたら
作業登録ボタンを押下後にエラーメッセージを表示させたいです。

調べてみたんですが、それらしい単語も分からないのでまったくヒットせず・・・。

このようなチェックに名前ってあるんでしょうか?
良ければサンプルコードを教えてもらえるとありがたいです。

151 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 16:53:52 ]
>>150
悪いけどググったら出る内容はなるべくググって欲しい
ttp://www.google.com/search?hl=ja&lr=&ie=UTF-8&oe=UTF-8&num=50&q=VB.NET+%E6%97%A5%E4%BB%98+%E6%AF%94%E8%BC%83

152 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 13:22:50 ]
>>151
150じゃないけど、ありがとう。

153 名前:VB始めて1カ月 [2008/06/16(月) 16:43:23 ]
文字列の最後にくっついているアスキーコードで 00 の文字を trimEnd で取り除きたい。
C言語の \0 はVBではどう表現するのか教えてちょうだい。

154 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 17:10:35 ]
Chr関数



155 名前:VB始めて1カ月 [2008/06/16(月) 17:23:04 ]
>>154
ありがとう
うまくいった

156 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 22:46:20 ]
windowsのプロダクトキーってどうやって取得しますか

157 名前:デフォルトの名無しさん [2008/06/17(火) 02:54:50 ]
画像ファイルを右クリックした時にメニューに表示される
「編集」を選んだときに起動されるアプリのパス名を取得したいのですが、
教えて欲しいです。

自分の場合はmspaintが設定されているので、レジストリエディタで
%SystemRoot%\system32\mspaint.exe
を検索してみたところ、いくつかヒットはするのですが、どれのレジストリに
メニューの「編集」に設定されているものなのか分かりませんでした。

画像ファイルのダブルクリックは「Windows 画像とFAXビューア」というのが
設定されているので、Process.Startを使うとビューアが起動されてしまい
mspaintが出てくれません。お助け下さい。


158 名前:157 mailto:sage [2008/06/17(火) 03:44:53 ]
ここの場所から取得してみたのですが、大丈夫でしょうか?
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\SystemFileAssociations\image\shell\edit\command


159 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:03:20 ]
VB.NET初心者なのです。
FormAから呼び出しているFormBを閉じた際に
FormAを閉じて(FormBで変更した内容のデータをFormAに反映してから)
FormAを再ロードしたいのですが

Private Sub FormB_Disposed(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Disposed

Dim a As New FormA

a.Close()

a.show()

とすると破棄されたオブジェクトにアクセスできません。
というエラーが出ます。
どうしたら回避できるでしょうか?
よろしくお願いします。

160 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:04:26 ]
閉じるんじゃなくて非表示にする

161 名前:159 mailto:sage [2008/06/17(火) 12:36:29 ]
>>160
度々すみません。

a.hide()もしくはa.visible = False後に
a.showとすると
FormAが2重に開かれてしまうのですが…

162 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:41:30 ]
そんなむちゃなでたらめなコードがまともに動くかいな

163 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:44:59 ]
Newって言葉和訳できる?

164 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:15:12 ]
出来ないからいるんだろ?



165 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:03:06 ]
Private Sub FormB_Disposed(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Disposed

FormA.Hide()

'FormBで変更した内容をFormAに反映させる記述をこのへんに

FormA.Show()

End Sub



166 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 16:35:57 ]
すみませんが、ご教授お願いいたします。
フォームAからフォームBを呼び出しますが、
既にフォームBが開かれていた場合、二重に呼び出さないようにするための条件式を教えていただけますか?


167 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 16:40:45 ]
単一のFormBインスタンス使いまわせば十分じゃね?

168 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 16:43:58 ]
>>166
普通にShowやShowDialogを使っていれば二重に呼び出す事は無いと思うんだけどな。
もし二重になってしまう場合でも、呼び出す際に変数を使って条件分岐させればいいと思うし。
どういう場合の事を言っているの?

169 名前:166 mailto:sage [2008/06/17(火) 16:51:04 ]
すみません、言葉が足りませんでした。
ちょっと長くなりますが、以下詳細です。
----------------
フォームA(メインフォーム)
フォームB(サブフォーム)
フォームC(サブフォーム)
があります。

(1)フォームAからフォームBをモーダルフォームとして開きます。
(2)フォームB・Cにはラジオボタンが配置されており、ラジオボタンのチェックの移動で
   フォームB・Cを行き来できるようにします。
   (その際、もう1つのフォームは閉じる)
(3)フォームB・Cともに「終了」ボタンが配置されており、ボタンを選択することで、
   自フォームを閉じ、フォームAに遷移します。   
----------------

長くなるので1回区切ります。

170 名前:166 mailto:sage [2008/06/17(火) 16:52:50 ]
以下、ソースです。

<フォームA>

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

FormB.ShowDialog(Me)
FormB.Dispose()

End Sub

171 名前:166 mailto:sage [2008/06/17(火) 16:55:23 ]
<フォームB>

Private Sub FormB_Show(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.Shown

Me.RadioButton1.Checked = True
Me.RadioButton2.Checked = False
FormC.RadioButton1.Checked = False
FormC.RadioButton2.Checked = True

End Sub


Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton2.CheckedChanged

Me.RadioButton1.Checked = True
Me.Hide()
FormC.ShowDialog(FormA)

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

FormA.Show()
FormC.Close()
Me.Close()

End Sub

172 名前:166 mailto:sage [2008/06/17(火) 16:57:03 ]
<フォームC>

Private Sub FormC_Show(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.Shown

Me.RadioButton1.Checked = False
Me.RadioButton2.Checked = True

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

FormB.Close()
Me.Close()
FormA.Show()

End Sub

Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged

Me.Hide()
FormB.Show(RollingPlan)

End Sub

173 名前:166 mailto:sage [2008/06/17(火) 17:02:09 ]
長文、すみませんでした。

このソースの場合、フォームA → フォームB → フォームC
と遷移し、フォームCのボタン2をクリックして閉じても、
もう1つフォームCが現れてしまいます。。。

恐らくフォームBのラジオボタン2のチェックを行った際に、
ラジオボタンを元の状態に戻すための一文、

Me.RadioButton1.Checked = True

を入れているために、この命令実行後にもう1つフォームが開いているのかなと推測します。
ただこの一文がないと、

フォームB → フォームC → フォームB
と戻ってきた場合に、ラジオボタンが最初の状態に戻っていないため、
やむなく入れている次第です。

そのため、フォームBからCを開く際に、既にフォームCが開いていた場合に
二重に開かないように制御出来れば良いと考え、今回の質問に至りました。

174 名前:デフォルトの名無しさん [2008/06/17(火) 17:36:52 ]
作成したダイアログベースのプログラムでファイル選択機能が必要になりました。
最初にOpenFileDialogクラス呼び出しでファイル選択ダイアログを出したのですが
ダサい、使いにくいと教授が言ってきたので、エクスプローラーの様なファイル選択を行うためのコントロールを埋め込みたいのですが
その様なものがどこかに(できればフリーで)公開されていないでしょうか?



175 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 18:44:44 ]
>>169
あまりのデザインの悪さに直接答える気にならないのだが、
フォームBとCは2フォームである必要はあるのかな?
例えばラジオボタンの代わりにタブコントロールで2画面分兼ねれば、
単純なモーダルフォームのプログラムになるのだがどうだろう。

176 名前:デフォルトの名無しさん [2008/06/18(水) 00:46:31 ]
オブジェクト指向勉強中の者です。質問です。

データ保持用クラスAがあります。
フォームでクラスAのインスタンスを作成し、データをセット、表示します。
そして、フォームからデータ修正用ダイアログを開き、クラスA用のデータを修正させるのですが、
この時、データ入力用ダイアログに値を設定、取得する方法として適当なのはどれなんでしょうか?
※クラスAのメンバはたくさんあり、今後も増え続けます。

@データ入力用ダイアログにクラスAを受け取るプロパティを追加する。
 例:Public Property pA() As A
 
Aデータ入力用ダイアログにクラスAの修正が必要なメンバ分、プロパティを追加する。
 例:Public Property AName() As String
  Public Property ANo() As Integer...〜

独立性を保つならばAだと思うのですが、クラスAのメンバが増えるたびに
プロパティを追加していかなければならないので、何かスマートじゃないような気がします。
かと言って@だと、ダイアログがクラスAと友達みたいになってしまいますし、
ダイアログに直接関係の無いデータまで受け渡しする事になります。

やはりAのように多少面倒でも必要なデータ分、プロパティを追加していくべきなのでしょうか?
よろしくお願いします。



177 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 02:08:13 ]
コードエディタの質問なのですが、Form1のコードを既定の「From1.vb*」
というタブ内に書いているのですが、分かりやすく分けたいのですが、
タブをまっさらの状態で作って同じようにもう一つに書く方法があったら教えて頂きたいです。



178 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 06:29:51 ]
ListView1についてなのですが、
ListView1で
If ListBox1.SelectedIndex = -1 Then Exit Sub
と同じようなことをさせるにはどのように書いたら良いでしょうか?

179 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 12:50:36 ]
>>177
モジュールの追加

180 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 13:12:46 ]
なんかここんとこ急に質問のレベル下がった気が…

181 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 13:52:32 ]
>>180
同感
おそらくVB6のサポート終了と同時に、
OOT理解してないマが.NETやり始めたことが原因かな、と

182 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 13:53:46 ]
まあ、いいじゃない。
俺のレベルもたかが知れてるし。
なんか同じ人の質問に見えて仕方ないけど。

183 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 17:38:59 ]
>>181
OOTって何ですか?

184 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 17:41:53 ]
javaスレなんかの方がレベル低いよ



185 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 18:02:31 ]
VBなんてネットでも書籍でも腐るほど参考書があるんだから
こんなところで聞く前に基礎勉強しろって思うのは俺がオサーンだからかの

186 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 21:42:29 ]
webbrowserで携帯禁止サイトを表示したいのだが、無理?
UA制限でなくIP制限の方

187 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 21:47:19 ]
ローカルデニーでもグローバルデニーでも道路封鎖してるのと一緒なんだから
車を変えたからといって通れるようにはならないだろ?
もしかしてリファラと勘違いしてないか?

188 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 21:53:13 ]
頭悪いにもほどがある

189 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 22:13:06 ]
勘違いはしていない。無理を承知で聞いてみている。


190 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 22:33:13 ]
釣りは他所でやれ

191 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 23:52:58 ]
無理なものは無理


192 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 00:14:31 ]
携帯禁止サイトって何?

193 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 01:35:34 ]
TreeViewでサーバー側のディレクトリ構造とファイルの一覧を作ろうと思うのですが
難しいでしょうか?(TreeViewについて)
他にもっと良い方法があれば教えていただきたいです。

194 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 09:32:15 ]
TreeViewの使い方としては普通だと思うけど



195 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 11:17:16 ]
フォームサイズの最大って、横1412ピクセルより大きくできない?

196 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 11:24:21 ]
基本的にデスクトップのサイズ+ちょっと以上にはできない
ドラッグで大きくする分にはごまかしもきくけど

197 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 11:34:40 ]
>>196
ということは、ワイド液晶モニタ用のシステムを作りたい場合、
ちゃちぃノートPCで作るとフォームが大きくできなくて死亡、
ということでおk?

198 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 12:15:09 ]
子ウィンドウのサイズはこの制限を受けないから、
Panelを一枚挿めばデザインできない事も無い

199 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 14:12:38 ]
フォームの中に Excel のような表を2つ埋め込みたいのですが、
Panel をフォームに配置し、その中に Label or Textbox でガシガシ配置していくより
もっとスマートな方法はありますか?
表自体かなり大きく (横30項目 × 縦X行) 、多数のラベルを配置していくことに
戸惑いもあります。

200 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 14:21:32 ]
>>199
グリッドは?

201 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 14:34:54 ]
>>200
即レスありがとうございます。
ググってみて、これが良さそうだと感じました。
ありがとうございました。

202 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 23:56:37 ]
>>194
そうですか。
TreeViwは初めて使うのでちょっと難しいです。
がんばってみます。

203 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 00:22:36 ]
TreeViewのイメージリストのアイコンについてなのですが、
TreeViewにディレクトリ構造とファイルを登録してあるので
フォルダならフォルダのアイコン、ファイルならファイルのアイコンを
表示するようにしているのですが、アイテムをクリックして
選択状態になった時に種類に関係なく、SelectedImageIndexのアイコンに
変わってしまうのですが、これを変わらないようにする方法を教えて頂きたいです。
SelectedImage=Noneのような設定は出来ないでしょうか?

204 名前:デフォルトの名無しさん [2008/06/20(金) 00:55:34 ]
.netの勉強をしたく、Visual Studio 2008 Express Editionsを使って
インストールしようとしているのですが、インストールウィザードの後半で
インストールされるプログラムの中にSQL Serverなどが入っているんですが
インストールしないことってできるんでしょうか?
HDDの容量も少ないのでできるだけ節約したいのですが。



205 名前:204 mailto:sage [2008/06/20(金) 00:59:34 ]
カスタムインストールありましたね・・・
スレ汚し大変申し訳ない。

206 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 01:02:20 ]
勉強なら入れてていいと思うけどな

207 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 01:50:49 ]
入れたほうがいい。


208 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 02:07:59 ]
入れて

209 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 02:10:31 ]
ええのんか?

210 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 06:56:08 ]
アッー!

211 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 16:35:45 ]
DataGridView の列見出しのセルの色って変えられますか?
Windows Default のカラーでしか表示されていません。

ColumnHeadersDefaultCellStyle プロバティで変更するような気がしているのですが、
変更しても反映されていません。
このプロバティは見当違いなのでしょうか?

212 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 16:51:22 ]
FTPサーバーにdirコマンドを送信して受け取った
ディレクトリやファイルの情報を処理するのはどんな方法がいいですか?
文字列として一つずつ解析していくしかないでしょうか?

213 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 17:08:30 ]
うん
サーバ次第で何が送られてくるか分からないし

214 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 17:09:59 ]
>>211
それで変更されるけど?



215 名前:211 mailto:sage [2008/06/20(金) 17:30:54 ]
>>214
すみません、質問を変えます。

>>211 に関しては
dataGridView1.EnableHeadersVisualStyles = false
を追加したら変更になりました。

追加質問なのですが、
特定の列ヘッダの色を変えることは可能でしょうか?

全ての列ヘッダに関しては
dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.Violet
で変更できましたが、特定の列ヘッダのみの変え方がわかりません。



216 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 17:37:20 ]
ColumnsからDataGridViewColumn取得してHeaderCellのStyle

217 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 18:06:15 ]
>>213
そうですか。わかりました
ありがとうございます。

218 名前:211 mailto:sage [2008/06/20(金) 18:55:32 ]
>>216
サンクスでした。できました。

219 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 21:45:07 ]
>>212
ほんの1例
01-01-00 12:00AM  <DIR> hoge
10-28-07 12:05PM 2228 hoge.aaa
<drwxrwxrwx 1 noone nogroup 0 Jul 9 11:20 hoge>
<-rwxrwxrwx 1 noone nogroup 434176 Oct 17 2004 hoge.ccc>
-rw-r--r-- 1 83245 ahp 38690 Feb 28 22:33 hoge.ddd
-rw-r--r-- 1 83245 ahp 48111 May 2 2004 hoge.eee
スペースは全角に変換してあるけどな

220 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 22:22:39 ]
つくづくFTPってのはプロトコルとして問題があるな

221 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 09:53:17 ]
2点ほど質問させていただきます。
プログラミングを始めて2ヶ月の初心者です。

1つ目はWebアプリでテーブルの行を動的追加したいのですが、
下に書いた通りだと1行目はOK、2行目以降はその行に上書きされてしまい、
行が追加されません。2つ目は追加した削除ボタンを押すことに
よって該当行を消したいのですが、イベントハンドルできません。
どこが問題なのか教えてください。

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim tabRow As New TableRow
Dim cell1 As New TableCell
Dim cell2 As New TableCell
Dim cell3 As New TableCell
Dim cell4 As New TableCell

cell1.Text = Me.goods.Text
cell2.Text = Me.price.Text
cell3.Text = Me.quant.Text

Dim button As New System.Web.UI.WebControls.Button
button.Text = " 削除 "
cell4.Controls.Add(button)

tabRow.Cells.Add(cell1)
tabRow.Cells.Add(cell2)
tabRow.Cells.Add(cell3)
tabRow.Cells.Add(cell4)
Me.Table1.Rows.Add(tabRow)
  End Sub

222 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 16:16:18 ]
BackgroundWorkerのDoWork内で、
実行フォームのコントロールにアクセスした場合、エラーが発生(Invokeで対処)しますが、
フォーム内の先頭に宣言したクラスへアクセスしてもエラーが発生しません。
マルチスレッドでこういう使い方は問題ありそうですが、どうですか



Public Class Form
private A as new Aclass

〜略〜

Private Sub BackgroundWorker_DoWork(ByVal sender As Object, ByVal e As DoWorkEventArgs) _
Handles BackgroundWorker.DoWork

'Form.text = "test" これはエラー

call A.test() 'ここではエラーでない

こういうことです


223 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 16:27:06 ]
Control 派生クラスのプロパティ・メソッドを操作しちゃ駄目ってだけだ
もちろんそれとは別に排他制御とかデッドロックの注意とかが必要になる可能性はあるが

224 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 16:39:38 ]
static変数を使っていなければ
クラスAはスレッドセーフという認識でいいのですか?



225 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 16:46:22 ]
StaticじゃなくてSharedな
Sharedクラスなら基本的にそれでいいが
メソッド中で使ってるほかのクラスのSharedメソッドがSharedな変数を操作してるかもよ

フィールドを使ったら大体の場合スレッドセーフじゃなくなる

226 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 16:52:29 ]
フィールドは例として上げただけで、クラスAはフィールドは操作しません。

もし、クラスA内でつかってる他のクラスがSharedを操作してる場合は、
dowork内でクラスAのインスタンスをつくる必要があるという認識でいいですか?

227 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 16:57:44 ]
どういう時はどうだとか聞くより、
実際の今のケースではどうなのか考えた方がいいよ。

228 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 17:09:12 ]
どこでなにをする必要があるかどうかなんか仕様知らん限り言えるわけが無い

229 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 17:10:12 ]
ざっと調べたところsharedはなかったです。
My.Computer.FileSystem.〜〜とかは大丈夫ですよね

230 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 17:43:05 ]
自作クラスでusingを使う為にはどうしたらいいですか

System.IDisposableを実装する方法を教えて下さい

231 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 17:45:35 ]
方法も何も,やりたいことがあるから実装するんだよあれは

232 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 17:47:03 ]
事故解決しました

Implements System.IDisposable

233 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 17:49:27 ]
そのレベルかよw
勘違いしてそうだから言っとくけど,IDisposable実装するだけじゃ何の意味もないよ
あくまでDisposeは「使い終わったときに実行してほしい処理を書く場所」だからね

234 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 18:04:51 ]
DataGridViewで行を選択不可にする方法を教えて下さい。
よろしくお願いします。



235 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 18:13:43 ]
SelectionModeのことか?

236 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 19:32:59 ]
SelectionModeでは行モードとかはありますが、選択できなくするモードはありませんでした






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

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

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