VB.NET質問スレ (Part8) ..
[2ch|▼Menu]
461:最凶VB厨房
05/01/09 10:25:39
>>442
HttpWebRequestクラス

Imports System
Imports System.IO
Imports System.Net

Public Class UAHttpAccess
Shared Sub Main(ByVal args As String())
Dim hr As HttpWebRequest = WebRequest.Create("URLリンク(127.0.0.1:10000)")
hr.UserAgent = "SaikyoVBChubo"
Dim wres As WebResponse = hr.GetResponse()
Dim st As Stream = wres.GetResponseStream()
Dim sr As StreamReader = New StreamReader(st)
Dim s As String = sr.ReadToEnd()
Console.WriteLine(s)
End Sub
End Class

462:デフォルトの名無しさん
05/01/09 10:55:43
>460
うーん、レジストリから取得するってことですよねぇ。
他の方法をお願いします。もっとスマートなやつ。

463:デフォルトの名無しさん
05/01/09 11:16:18
すみません,質問です.

ListBox に現在のプロジェクトにあるフォームをリストアップし,
そこから選んだアイテムに対応するフォームを開く,という処理を行ないたいのですが……

まず,現在のプロジェクトにあるフォームのリストを取得する方法がわかりません orz
で,とりあえず固定でフォーム名のリストを持たせてやってみようと思ったのですが,
今度は,ListBox から取得した文字列で示されるクラスを作る方法がわかりません orz

Dim f = New Form1() の「Form1」とかの部分を変数で指定できれば……と思ったのですが,
この発想自体が無理っぽいでしょうか?


464:最凶VB厨房
05/01/09 11:53:50
Imports System.Reflection
-----------------------
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim asm As [Assembly] = [Assembly].GetExecutingAssembly()
Dim t As Type
For Each t In asm.GetTypes()
If t.IsSubclassOf(GetType(System.Windows.Forms.Form)) Then
ListBox1.Items.Add(t.FullName)
End If
Next
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim s As String = CType(ListBox1.Items.Item(ListBox1.SelectedIndex()), String)
Dim asm As [Assembly] = [Assembly].GetExecutingAssembly()
Dim f As Form = CType(asm.CreateInstance(s), Form)
f.Show()
End Sub
'Button1,Button2,ListBox1配置


465:463
05/01/09 12:17:40
おぉー
とても感謝です.ありがとう!

# Assembly までは辿り着けたんですが GetExecutingAssembly() まで行けてませんでした orz

466:デフォルトの名無しさん
05/01/09 12:30:56
>463
おお、なんかかっこいいな。

467:デフォルトの名無しさん
05/01/09 14:42:12
>>462
何様?

468:超初心者
05/01/09 17:39:44
質問です!
あるものを処理し(具体的にはJavaなのですが)、その結果をhtmlで作成
もしくは元からあるhtmlファイルに上書き、それをVBで表示さ
せたいのですが、そのhtml作成(更新)されてから、読み込んで
表示させるにはどのようにすればよいのでしょうか?

469:デフォルトの名無しさん
05/01/09 17:51:37
>467
いや、気持ちは分かるんですが、もっとスマートな方法を
知りたかったので。他の方、分かりませんか?

470:デフォルトの名無しさん
05/01/09 20:10:33
WMI使うとか

471:デフォルトの名無しさん
05/01/09 20:35:00
>470
どうも。

ところでみんなわりぃ、サブネットマスク取得する必要
なくなっちゃったよ。まぁよくあることだわな。

472:デフォルトの名無しさん
05/01/10 03:52:18
ばかじゃないの

473:最凶VB厨房
05/01/10 06:39:35
Private Sub FileSystemWatcher1_Changed(ByVal sender As Object, ByVal e As System.IO.FileSystemEventArgs) Handles FileSystemWatcher1.Changed
Dim fi As FileInfo = New FileInfo(e.FullPath)
While fi.LastAccessTime = DateTime.Now
System.Threading.Thread.Sleep(1000)
End While
AxWebBrowser1.Navigate(e.FullPath)
End Sub
'FileSystemWatchr1,AxWebBrowser1(Microsoft Web Browser)配置

474:最凶VB厨房
05/01/10 07:20:50
Dim query As ObjectQuery = New ObjectQuery("Select IPSubnet FROM Win32_NetworkAdapterConfiguration")
Dim searcher As ManagementObjectSearcher = New ManagementObjectSearcher(query)
Dim share As ManagementObject
For Each share In searcher.Get()
Dim o As Object = share("IPSubnet")
If Not o Is Nothing Then
If o.ToString() = "System.String[]" Then
Dim d() As String = CType(o, String())
Console.WriteLine(d(0))
End If
End If
Next
URLリンク(ukamen.hp.infoseek.co.jp)
URLリンク(msdn.microsoft.com)

475:最凶VB厨房
05/01/10 07:26:18
補足追加

Imports System.Management
参照の追加
System.Management

476:デフォルトの名無しさん
05/01/10 09:29:16
>474
お前色々ソース出してるけど、その読みにくさなんとかしろ。
全角スペースでインデント付けろ。

477:デフォルトの名無しさん
05/01/10 10:20:58
分かってると思うけど↑みたいのいちいち構うのよそう。
こういう人はそのうち自作自演で「構い」だすだろうが、そっちも含めて放置で。

478:476
05/01/10 11:05:07
>477
なんで?ソースを読みやすくしてほしくないの?

479:476
05/01/10 11:06:36
While fi.LastAccessTime = DateTime.Now
  System.Threading.Thread.Sleep(1000)
End While

こう書いたほうが読みやすいとは思わんのかね?

480:デフォルトの名無しさん
05/01/10 11:32:14
Thread.Sleepを使うとフリーズしちゃうでしょ(笑)

481:デフォルトの名無しさん
05/01/10 11:32:23
>>477の↑は「最凶VB厨房」に向いてると思われ。

482:超初心者
05/01/10 11:53:19
>>474
は468への答えでいいの?

483:デフォルトの名無しさん
05/01/10 12:59:27
>482
いいの?じゃなくて、いいのですか?くらい書いてもらえますか?

484:超初心者
05/01/10 13:13:59
>>483
ゴメンナサイ、いいのですか?

485:デフォルトの名無しさん
05/01/10 14:09:02
すいません、MainMenuでヘルプメニューを作って、
それをクリックすると、txtファイルをよび出すようにしたいのですが、
どうすればいいのですか?

486:デフォルトの名無しさん
05/01/10 14:15:15
txtファイルをどうしたいのかによるけれど。
関連づけられたエディタで開きたいのなら、System.Diagnostics.Procss.Start

487:デフォルトの名無しさん
05/01/10 14:15:53
む、eが抜けた。System.Disgnostics.Process.Start

488:デフォルトの名無しさん
05/01/10 14:16:15
>>485
呼び出すって?

489:485
05/01/10 14:34:42
>>486
どうもです。できました。

>>488
すみません、なんと表現していいのか分からなかったもので^_^;
486さんの解釈の通りです。

490:デフォルトの名無しさん
05/01/10 14:35:41
>>485
ヘルプテキストをhtml化して、ブラウザに投げるのが簡単。

491:デフォルトの名無しさん
05/01/10 15:21:55
>490
はぁ?

492:超初心者
05/01/10 15:27:08
>>473〜475
ありがとう。でも、馬鹿すぎてよくわからんとです。
どこで何やってるのか誰か解説キボンです。


493:デフォルトの名無しさん
05/01/10 15:36:30
>492
あなたは馬鹿じゃないですよ。質問者のレベルに合わせた
回答をできない方が馬鹿なんです。

494:デフォルトの名無しさん
05/01/10 15:37:33
>>493
自演乙

495:デフォルトの名無しさん
05/01/10 15:51:18
>494
根拠は?そうでないと証明もできませんが。
あなたは出来るの?

496:493
05/01/10 15:52:34
自演じゃないですが、自演だったとして何か不都合がありますか?
どちらにしろあなたが馬鹿だという事実は変わりませんよ。

497:デフォルトの名無しさん
05/01/10 15:59:12
うんそう、満足に初心者に一から教える事もできない、自演と決めつけて心の安寧を貪る馬鹿の巣窟の日記帳だから。
賢いあんたはこんな芥溜め痰壷に近づかない方が良いよ。

498:デフォルトの名無しさん
05/01/10 16:13:06
>>492
あなたに対する解答は473だけ
474〜475は471に対するもの、もういらないようだけど。
そのくらいは分かるよね。


499:デフォルトの名無しさん
05/01/10 16:43:09
          || ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄||
          || 図星だと      Λ_Λ  いいですね。
          || こうなります。 \ (゚ー゚*)
          ||________⊂⊂ |
  ∧ ∧    ∧ ∧    ∧ ∧    | ̄ ̄ ̄ ̄|
  (  ∧ ∧ (   ∧ ∧ (  ∧ ∧ |    |
〜(_(  ∧ ∧ __(  ∧ ∧__( ∧ ∧ ̄ ̄ ̄
  〜(_(  ∧ ∧_(∧ ∧ _(∧ ∧ は〜い、先生。
    〜(_(  ,,)(_(   ,,)(_(   ,,)
      〜(___ノ 〜(___ノ 〜(___ノ

500:デフォルトの名無しさん
05/01/10 17:58:46
質問スレで「初心者」を免罪符にする香具師の典型的パターンだな

501:超初心者
05/01/10 18:35:47
>>498
そうでしたか。
やさしい人、468お願いします!!

502:デフォルトの名無しさん
05/01/10 18:40:43
ここにも釣り師登場か。

503:デフォルトの名無しさん
05/01/10 18:46:26
>>501
>>334,>>337,>>368,>>378,>>387,>>390
これ皆あなたでしょ、少しは自分で考えないと。

504:デフォルトの名無しさん
05/01/10 19:46:55
>503
どこまで考えればいいの?線引きしてください。

505:デフォルトの名無しさん
05/01/10 20:04:40
答えを丸写ししてるだけじゃダメだから、MSDNやサンプルコード
を検索したり組み合わせたりして、自分がやりたい処理に持って行
く。

大まかな線引きとしては、「やりたいこと」だけを質問するんじゃ
なくて、「まずコードを書く」ことからやってみそ。

506:デフォルトの名無しさん
05/01/10 20:06:45
>505
ギャハハハハ。やってみそだって!ギャハハハハハ

507:デフォルトの名無しさん
05/01/10 20:07:28
>>505
ということは、コードをまったく書けない場合は質問するな、
ということですね。他の方もそうなんですか?

508:デフォルトの名無しさん
05/01/10 20:24:22
>>507
コードがまったく書けない人に質問されても
答えることは難しいわな。
入門書である程度勉強するしかないのでは。
特にここは長い説明は嫌われるしな。


509:デフォルトの名無しさん
05/01/10 20:28:52
>508
それはあなたのルールですか?
このスレのルールですか?

510:デフォルトの名無しさん
05/01/10 20:29:52
コードが全く書けないのにプログラム板に来るのはなんで?
ここはコードやアルゴリズムを突き合わせて切磋琢磨するところ
だと思ってるんだが。

511:デフォルトの名無しさん
05/01/10 20:30:55
>510
切磋琢磨してるのですが全く書けないので、こういう
掲示板を利用してみようかと思って辿り着きました。

512:デフォルトの名無しさん
05/01/10 20:31:24
>510
それはあなたのルールですか?
このスレのルールですか?

513:デフォルトの名無しさん
05/01/10 20:32:49
>510
そういうスレ立てれば?>>1には「VB.NETの質問全般です」としか
書かれていないので、別にレベルが低い質問もあっても
仕方ないのでは?

514:デフォルトの名無しさん
05/01/10 20:33:27
まず、カイジの利根川のセリフを頭に叩き込まなければなりませんね。

少なくともコードの書き方(配列変数は文法的にどう書くのなど)は、自分で
勉強するものだろう。まさかそんなことまで人に教えてもらおうなんて奴は
居ないと思うが。


515:俺ルール
05/01/10 20:33:38
ルールっぽいことを書く人は、「名前」欄に「俺ルール」や「スレルール」と
書くことにしましょう。何もない場合は「俺ルール」ということにしましょう。

516:デフォルトの名無しさん
05/01/10 20:34:04
>514
それはあなたのルールですか?
このスレのルールですか?

517:デフォルトの名無しさん
05/01/10 20:34:31
>>514
カイジの利根川のセリフって何ですか?
専門的すぎてよく分かりません。

518:俺が職場で学んだルール
05/01/10 20:42:33
自分がやりたい処理がある。

テンプレに載ってる数多のサンプルや手法を読んでみる。

流用できそうなのをうまく編集してコードにしてみる。

うまくいかなかったら、ここor識者に具体的な質問をする。

‥‥つか、学生にしろ社会人にしろこれくらいは常識だと思う。
教えて君は本人にとっても回りにとっても良くないだろ。
URLリンク(myu.daa.jp)

519:デフォルトの名無しさん
05/01/10 20:43:02
>>516
よほど難しい文法でない限り文法事項なんて独習が常識だろう。
I am a student in that high school. を訳せません教えてくださいって聞くアホは
いないでしょ。


520:508
05/01/10 20:43:51
>>509
どこにルールなんて書いたの?
コードが全くかけない人に、どのように説明するの。
それともコードは全くかけないが、人のコードは
理解できるとでも言うの。

521:デフォルトの名無しさん
05/01/10 20:44:35
>518-519
あのぅ、さっきからずっと釣ってるのですが、いつまで反応してくれるのですか?
いい加減釣りも飽きてきたのでやめたいのですが。

522:デフォルトの名無しさん
05/01/10 20:45:16
>520
>521

523:デフォルトの名無しさん
05/01/10 20:46:50
>>521
立場が悪くなったら釣りの振りして逃げる。雑魚っていうかゴミの典型ですね。
恥ずかしい

524:デフォルトの名無しさん
05/01/10 20:52:49
>>513
質問したっていいさ、ただ答えたくても、全くコードをかけないやつに
どうやって説明したらいいか、困ったな。といっているの。


525:デフォルトの名無しさん
05/01/10 20:53:56
>523
うわ、まだ反応してるよ。

526:デフォルトの名無しさん
05/01/10 20:54:35
>523
ゴミの定義は?

527:デフォルトの名無しさん
05/01/10 21:00:00
明日から学校なんだし、ここも静かになるだろ。
枯れ葉も山のにぎわい程度に流しておけばいいじゃん。

528:デフォルトの名無しさん
05/01/10 21:02:07
>>527
うんだ。

529:デフォルトの名無しさん
05/01/10 21:06:32
>527-528
私に関して言えば引きこもってるので変わらないですよ。

530:デフォルトの名無しさん
05/01/10 21:22:51
意味のわからない質問、答えにくい質問はスルーされる。
自然の摂理だ。
質問者が思っている以上に答えるのにはエネルギーを使うもんだ。

531:デフォルトの名無しさん
05/01/10 21:44:09
>530
質問に回答するのはあなた方の自由のはずですが。

532:デフォルトの名無しさん
05/01/10 22:08:41
別に、質問者の質問内容の程度なんてどうでもいいんでない?

答える側は、質問の意図を聞き返したりスルーしたり出来るし。
答えたい奴が答えるでいいじゃん。

533:超初心者
05/01/10 22:14:15
なんかすいません。僕のせいで荒れてしまいましたね。
自分で検索したんですがさっぱり出てこなくて。
もう少しがんばってみます。それでもわからなかったら
ここで質問します。そん時はよろしくお願いします!

534:超初心者
05/01/10 22:25:35
あともうひとつ、>>473-475は468の答えでは
ないんですか?なんか釣りとか書いてたから・・・

535:デフォルトの名無しさん
05/01/11 01:00:14
URLリンク(jp.thespoke.net)

あの似顔絵ウィザードも含めて、HomeStyle+ って
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.NET Framework で書かれてるんですね。。。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
逆アセンブルしてみたら気づきました・・・・。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ああいうのを作品に組み込むのも面白いかも(笑)

MSの製品を逆汗するような奴をMSはMVPに選んでいるんです。MSは逆汗を認めていると

536:デフォルトの名無しさん
05/01/11 01:25:32
ちょい荒れ気味のところすまんけど、

VBCommenter + NDoc って使ってる?

試しに入れてみたけど、VBCommenter出力がいまいちうまくいかなかったり、
NDocが異常終了したり。どっか設定おかしいのかなあ。
でもうまくいったら便利そう。ちなみにC#未経験。

537:デフォルトの名無しさん
05/01/11 08:24:04
上に便乗して質問w

VB.netで勉強の為に簡単なチャットプログラムを作ろうと思ってるんですが、
VB6.0の資料はぐぐっても出てくるのですが、VB.net用の資料は全然ないのです。
VB6.0のソースを参考にして自分なりに書いてみたのですがどうも動かない・・・
一応、
URLリンク(www.comel.or.jp)
こちらのVB6.0用のソースを参考にして自分で作ったソースが↓です。
URLリンク(cdrtest.hp.infoseek.co.jp)
ソースをUpして「見て下さい」っていうのは失礼だとは思うのですが
どうか宜しくお願い致します。


538:デフォルトの名無しさん
05/01/11 10:04:01
ソースを見ずにカキコ


非同期サーバー ソケットの使用
URLリンク(www.microsoft.com)

Google 検索: C# Socket
URLリンク(www.google.co.jp)

539:デフォルトの名無しさん
05/01/11 10:41:33
とりあえずMSWinsockLib.dllとか見えた時点で読むのを止めた。

540:デフォルトの名無しさん
05/01/11 11:01:38
vb.netでおなじLAN内のファイル転送の仕方が色々調べましたが分かりません 教えてください

541:デフォルトの名無しさん
05/01/11 11:03:11
>>540
何を調べたのか書いてみろ。

542:デフォルトの名無しさん
05/01/11 11:14:36
imports system IO file.copyでマシンネームを入れるやり方だったと思うのですがよく分からずできずにあきらめ、
色々サイトを見て回ったのですがそれらしい物すら見つからずです

543:デフォルトの名無しさん
05/01/11 11:19:29
さっきの追加です チャットするまではできます 
そこにファイル転送も加えたいです

544:531
05/01/11 12:06:56
>532がいいこと言った

545:デフォルトの名無しさん
05/01/11 13:48:19
取りあえずチャットのプロトコルとしてUDP使うのはやめとけ。ファイル転送もやりたいなら
なおさらTCP使った方がいいぞ。
俺は4年前から自宅サーバでチャットプログラム動かしてて内輪でチャットやってるから
チャットプログラムを本格的に作る気ならノウハウぐらいは提供できる。C#だが。
>>539
俺はいつもSystem.Net.Sockets名前空間のSocket使ってるから知らないんですけど
MSWinsockLibてなんですか?Winsockのラッパー?


546:デフォルトの名無しさん
05/01/11 14:10:02
>>545
> 俺はいつもSystem.Net.Sockets名前空間のSocket使ってるから知らないんですけど
> MSWinsockLibてなんですか?Winsockのラッパー?

そう。
そりゃ.NETでWinsockのサンプルなんて無いだろ(System.Net.Socketsがあるんだから)、
まず>538でも見て.NETにおけるソケットの扱い方を勉強しろ、と。
そう思った次第。

547:デフォルトの名無しさん
05/01/11 14:29:58
>546
勉強しろ、じゃなくて、勉強してください、ね。語尾は正確にお願いします。

548:デフォルトの名無しさん
05/01/11 14:43:54
>>547
何様?

549:デフォルトの名無しさん
05/01/11 14:45:10
殿様ん

550:デフォルトの名無しさん
05/01/11 17:00:12
勉強しなくなけりゃしなくても
喪れは困らないので勉強しなくてもいいですよ。

551:デフォルトの名無しさん
05/01/11 17:26:59
>550
なんでタイプミスするの?

552:デフォルトの名無しさん
05/01/11 17:28:40
timer1のを一度disableするとenableにしてもEVENTかかりません。
なぜでしょう。?
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If picBar.Height > 0 Then
picBar.Height = picBar.Height - 1
Else
Timer1.Enabled = False ’ここで切ると二度と飛んでこない?
End If
End Sub
Sub threadMain()
Do
thread1.Sleep(100)
If Now.Second = 0 Then
Timer1.Enabled = True
Timer1.Interval = 100
Timer1.Start()
picBar.Height = 500
End If
Loop
End Sub



553:デフォルトの名無しさん
05/01/11 17:36:19
>552
System.Windows.Forms.Timerを使っているのであればムリ。
他のTimer使ってみてはどうでしょう。

554:デフォルトの名無しさん
05/01/11 18:10:52
えっ、他にもタイマーがあるの?
ちなみにバグってことでしょうか?

555:デフォルトの名無しさん
05/01/11 18:31:57
>>552
MSDN読んだら、Start()の替わりにEnabledにtrueを設定することでもスタートさせることができると
書いてあったのだが二重起動にならないか?多分Timer内部でハネてるから大丈夫とは思うが。
他のタイマーとしてはSystem.ThreadingのものとSystem.Timersのものがある。
使い分けはMSDN読んだら書いてある。


556:デフォルトの名無しさん
05/01/11 18:40:37
二重起動は気にする必要はない。
Start()はEnabledをtrueにしてるだけだし、
Enabledを変更した時に値が同一なら以降の処理をしないようにしてる。

557:デフォルトの名無しさん
05/01/11 18:46:01
>555
 ありがとう。
 良く分からんが、System.windows.forms.timerってのはComインターフェース
なのかな? vb6.0で作ったActiveXなんかもNETでは動作がおかしい。
VB6.0のときはEnable=trueだけで制御できた。

結論:flgを追加して、ディスエーブルするようにした。timerはFalseにしない。



558:デフォルトの名無しさん
05/01/11 19:00:55
バグかどうかよくわからんけど、System.Windows.Forms.Timerは
マルチスレッド環境でうまく動かないことがあったな。

559:デフォルトの名無しさん
05/01/11 19:04:45
>Timer は、ユーザー定義の間隔でイベントを発生させるために使用されます。
>この Windows タイマは、UI スレッドを使用して処理を実行するシングルスレッド環境に合わせて設計されています。
>ユーザー コードには利用できる UI メッセージ ポンプが必要です。
>また、このコードは必ず同じスレッドから操作し、別のスレッドに対する呼び出しをマーシャリングする必要があります。

いかにもお手軽に使う以外は使うべきでなさそうじゃないか。

560:デフォルトの名無しさん
05/01/11 19:08:28
>559
ありゃ。ちゃんと書いてあったのか。失礼しました。

561:デフォルトの名無しさん
05/01/11 20:48:23
開発環境が変わったんだけど、C#なしのVB.NETだけ、VSSも入ってないマシンになっちゃったから、
とりあえずSubversion + AnkhSVNを試してみた。

……VC++.NETがないと動作しないってマジですか ○| ̄}_
(正確にはVCProjectEngine.dllだかが必要らしい)

Subversion + TortoiseSVNでがんがるべき?
NTCVS + Iglooってどうなのかな。

562:デフォルトの名無しさん
05/01/12 05:33:22
ツールバーをウィンドウから独立させる方法教えてくだちい!
普通フォームの端につくか、枠内で動くかしかできませんよね。
そこをなんとか。
ツールバー自体がアプリの実体に見えるようなものを作りたいんです。

563:デフォルトの名無しさん
05/01/12 10:57:34
>>562
PhotoShopみたいなフローティングのツールバーってこと?
空のフォーム生成してDockしちゃえば?


クリレポがうまく配布できない
あるPCでは動くのにあるPCでは動かない
{XXXXX〜XXXX}のCOMが何とかってエラーが出る
何かファイルが足りないんだろうか

564:プログラマ初心者
05/01/12 11:35:29
.netでversion番号を入力したいんですがどういった方法を用いればよろしいですか?

565:デフォルトの名無しさん
05/01/12 11:38:49
>>565
AssemblyInfo

566:564
05/01/12 12:32:58
>>565
すんません。
参考になりました。

567:デフォルトの名無しさん
05/01/12 15:48:01
フォームに大幅に変更を加え、実行したところ、変更途中のものがビルドされて
出てきて、実際にビルダーで作ったものとは異なる状態で表示されます。

エラーのある状態で実行すると、こうなるのでしょうか?途中経過を見たいので
最新の状態でビルドして画面を見たいのですが、どうすればよいですか?

568:567
05/01/12 16:07:55
すみません、エラー部分に片っ端から ' をつけることで解決しました。


もうひとつ、教えていただきたいのですが、frmAというフォームをそっくりそのままコピーして
同じプロジェクト内でfrmBというフォームを作りたいんですが、どうすればよいのでしょう?

別名で保存しても、プロジェクトからは見えないのですが。

569:デフォルトの名無しさん
05/01/12 16:18:56
>>568
既存項目の追加

570:デフォルトの名無しさん
05/01/12 17:00:06
VB6のDirListBoxを使うにはどうすればいいんですか?



571:デフォルトの名無しさん
05/01/12 17:02:23
URLリンク(www.google.co.jp)

572:570
05/01/12 17:39:28
 VB6で作ったプログラムにDirListBoxがあるんですが、これをウイザード
で自動変換すると、NETに上手く変換してくれます。ところが、ツールボックスに
はDIRListBoxが見当たらない。
.NETのデザインエディターでコピーして貼り付けると自動的にDirListBox2が
できます。
 ということで、デザインエディターはVB6のDirListBoxもサポートしているわけです。
どうすれば、ツールボックスにDirListBoxを追加できるのかが知りたいのです。
どなたか分かりませんか? 



573:デフォルトの名無しさん
05/01/12 17:44:49
ツールボックスで右クリックして

574:デフォルトの名無しさん
05/01/12 17:47:02
571の3つめ辺りにある宇宙仮面のとこに書いてるっての。

575:570
05/01/12 18:06:04
>574
おっーサンクス。でけたー。
帰りにMSに石なげてかえろっと。

576:デフォルトの名無しさん
05/01/12 21:26:19
10秒後とにファイルを読み込むということをしたいんですが
どのようにしたらよいでしょうか?



577:デフォルトの名無しさん
05/01/12 21:27:29
System.Windows.Forms.Timerを使えばいいんじゃない?

578:576
05/01/12 21:56:43
タイマーコントロールをフォームに貼り付ける
その中にファイルを読み込むコード入れればよいんですよね?
でも、ボタンをクリックしたときにタイマーを使ってその処理
をしたいんですがどうすれば?

579:デフォルトの名無しさん
05/01/12 22:00:50
>>578
> でも、ボタンをクリックしたときにタイマーを使ってその処理
> をしたいんですがどうすれば?

ボタンをクリックしたらタイマをスタートさせるという事?
ならその通りにコーディングすればいい。
貼り付けただけじゃタイマはスタートしないぞ。

580:noname
05/01/12 22:34:50
リストボックスに表示されている項目において、マウスでクリックした
項目のテキストを取得するにはどうしたらよいのでしょうか。

例)
リストボックスに、「A」「B」「C」と表示されているとする。
2番目をクリックすると、「B」という文字が取得できる。

サイトをさがしてみたのですが、マウスでクリックした項目が何番目
であるのかを取得する方法はのっていましたが、テキストの取得方法は
のっていませんでしたので、どうしたらよいのか分かりません。(汗
URLリンク(vbdotnet.fc2web.com)

基本的な質問ですみませんが、よろしくお願いします。

581:デフォルトの名無しさん
05/01/12 22:38:24
まあ項目のインデクスからでも取得はできるけどね。

SelectedItemプロパティ。
選択アイテムの文字列なら.ToString()メソッドも。

582:noname
05/01/12 22:45:31
>>581
すばやい回答ありがとうございます!!
助かりました。

583:デフォルトの名無しさん
05/01/12 22:54:19
nprofって日本語対応だれかやってないのかなあ。
パスに日本語が入ってるとエラーが出る。


しかし、ちゃんと動作しても、情報のうまい見方がいまいちよくわからないのであった。
devpartnerなんかはわかりやすいけど、50万円か……
URLリンク(www.atmarkit.co.jp)

ANTS Profilerってのも見やすそうだけど、$295... URLリンク(www.red-gate.com)


584:デフォルトの名無しさん
05/01/12 23:49:25
質問よろしいでしょうか
Web上を探し回ってUSBカメラの映像をフォーム上に表示させることには成功しました。
VFWとDirectShowを使ったやり方、表示はどちらもうまくいったのですが、DirectShow
のほうで、スナップショットの扱いがどうもうまくいきません。
スナップショットを静止画として別フォームに表示、ではなく、それをBMPかJPGとして
保存したいのです。
VFWではそれをクリップボードに取り込んだうえ、Doodle2というフリーのdllを使って
BMPに出力できたのですが、DirectShowでそのやり方を無理にとると、モニター全体の
PrintScreen状態の画像になってしまいます(欲しい画像は隅にちょこっとうつってる
だけ。VFWでは画像部分だけが取れた)

やりたいことはすでにVFWで実現できており、これは後学のためにという程度の
質問なので、誰かひまなとき教えてください。

585:デフォルトの名無しさん
05/01/13 00:04:52
ようわからんが、取りあえずそれっぽいところ
URLリンク(www.google.com)
URLリンク(mobiquitous.com)

586:デフォルトの名無しさん
05/01/13 00:34:11
>>585さん
ありがとうございます
後のほうのリンク、内容はすごく面白そうなんですけど、読解できないのが
なさけない。
Cってのはこういう書き方をする言語だったんですか、とか、新たな発見を
してしまうレベルの素人だったりするので・・・


587:デフォルトの名無しさん
05/01/13 12:50:48
昨日書いた者ですが、タイマーが作動してないのですが・・・

588:デフォルトの名無しさん
05/01/13 12:56:00
そうか頑張れ。


真面目な話それだけじゃ何も分からないのでせめて
・何をどうしたか
・例外が出るならどんな例外か
・できれば関連部分のコード
を書かないと答えようがないよ。

589:587
05/01/13 13:41:58
とりあえずタイマーが動いてるかどうか見たいんで
ラベルに、1秒ごとに表示させたいのですが。
とりあえずタイマー貼り付けてそのなかに
i = i + 1
Label1.Text = i
iは、タイマーの外で宣言してます
としたのですがラベルが0のまま動きません・・・

590:デフォルトの名無しさん
05/01/13 13:43:21
VB.NETで作ったものって、VB6で動かせますか?

591:デフォルトの名無しさん
05/01/13 13:50:33
>>589
で、その貼り付けたタイマのインスタンスに.Start()はしたの?
って言うところから質問を一問一答で繰り返していくというのは掲示板というシステム上歓迎できない。

>>590
VB6で動かすという意味が分からないのだが。
VB.NETで作ったものは.NET Frameworkが必要だよ。
//統合開発環境の名前と言語の名前が同じだとややこしいな。

592:デフォルトの名無しさん
05/01/13 14:17:23
してないです。どうするんですか?

593:デフォルトの名無しさん
05/01/13 14:36:03
>>592
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Static i As Integer
i += 1
Label1.Text = Convert.ToString(i)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Timer1.Interval = 1000
Timer1.Start()
End Sub

594:デフォルトの名無しさん
05/01/13 14:51:11
>>593
タイマーの定義の部分を見せてください。昨日の流れから別のタイマーに代えたりしてませんか?
Label1にアクセスしてますからSystem.Windows.Forms.Timer以外では問題が出るはずです。

595:デフォルトの名無しさん
05/01/13 15:26:23
なんかびみょーに話がずれてないか?

596:デフォルトの名無しさん
05/01/13 15:49:12
うん、始めから話が変だな。
大体System.Windows.Forms.Timerだったら
Start() Stop() でも Enableでもどちらでも
スタート&ストップ出来るじゃん。

597:デフォルトの名無しさん
05/01/13 16:07:04
はじめのコードはタイマーより別のところが突っ込みどころ満載だったんだよね。
Sub threadMain() <−ワーカースレッドぽかったり
Do
 thread1.Sleep(100) <−なんか寝てたり
 If Now.Second = 0 Then <− 意味わかんなかったり
  Timer1.Enabled = True
  Timer1.Interval = 100
  Timer1.Start()
  picBar.Height = 500
End If
Loop

598:デフォルトの名無しさん
05/01/13 16:28:26
配列をリッチテキストボックス(もしくは、ラベルかテキストボックス)に1行ずついれたいのですが、
どうやればできるでしょうか?
配列はstring型で10個です。配列の0〜9を一行ずつ表示させたいです。
調べましたが、簡単すぎるのかヒットしませんでした。お願いします。

599:デフォルトの名無しさん
05/01/13 16:37:05
String.Join()だな。

600:デフォルトの名無しさん
05/01/13 16:38:41
>>598
改行を入れたいって話かな?だったら改行文字で区切ればよい。
VBだとvbCrLfって定数が使えたはず。

601:デフォルトの名無しさん
05/01/13 16:39:10
一番簡単なのはRichTextBoxのLinesプロパティにそのまま文字列配列を代入する事。
ただし上書きになる。

602:599
05/01/13 16:47:15
1番取った記念にサンプル乗っけちゃお。
Dim str() As String = {"aa", "bb", "cc", "dd", "ee", "ff", "gg", "hh", "ii", "jj"}
TextBox1.Text = String.Join(vbCrLf, str)


603:ディフォルトの名無しさん
05/01/13 20:51:19
ADO.NETのDataSetの使い方がいまいち分からないです。。
ADOでの、ADODB.RecordsetでopenしてFilterでデータをしぼりこんで、
movenextしながらデータ取得。という手順をやりたいんですけど、
DataSetではFilterにあたるものがみあたりません。。。
どうしたらよいのでしょうか?
よろしくお願いいたします。

604:デフォルトの名無しさん
05/01/13 21:00:21
>597
なんで意味わかんないの?

605:デフォルトの名無しさん
05/01/13 21:30:34
>>603
DataSetは、端的に言えばDataTableのコレクションとそれぞれのDataTableのリレーションを管理するためのクラス。
データそのものはDataTableの中に入ってる。
DataTableのSelectメソッドが目的のものだろうね。

606:デフォルトの名無しさん
05/01/13 21:46:55
>>603
System.Data.DataViewがそれにあたるのだが、それ以前のところで悩んでそうですね。
System.Data.DataSetは高機能のデータトランスファオブジェクトであって、
データベースのテーブルとは直接の関係はないのですよ。
読み込んだデータをまとめて溜め込んでおいたり、持ち運んだりするためのものなのです。

unixとlinuxの間をみるといいことがあるかも、それからキーボードのuからqを続けて見る。

607:ディフォルトの名無しさん
05/01/13 21:55:31
>>605>>606
ADO.NETは、リファレンスとか読もうとしても、
情報量が膨大でどこを読めばいいのか良く分からなかった
ところもあったので、読み方の糸口が見つかった気がします。
早速調べてみます。
ありがとうございます。

608:デフォルトの名無しさん
05/01/13 23:12:37
ついでに便乗質問。

Datatable.Select()は便利だけど、戻り値がDatarow()になる。
ソートのために使うときなんか、結果はDatatableで欲しいんだけど、
Datarow()をFor Eachかなんかで回して1行ずつDatatableを作り直すしかないの?
ADO.NET 2.0だと、Dataview.ToTable()ってのが使えるみたいなんだけど……。

あと。
SQLを発行してDatatableを作ったあと、そのテーブルに対して操作を行ないました。
その結果、いっぱい重複行ができちゃったのでDISTINCTしたいんだけど、そういうのはさくっと簡単には書けない?

とりあえず、Datatable.Copy()で同じスキーマの空テーブルを作り、全ColumnをUniqueにして、
Tryで例外無視してむりやり全行ぶっこんでみたい。遅い。
全Columnを複合主キーにして、Findできなければ追加、ってやったらちょっとマシになった。
もうちょいスマートに書けないのかなぁ

609:デフォルトの名無しさん
05/01/13 23:20:07
あ、テーブルに対して操作したのは、単にちょっと便利な配列として使ってただけで、
DBに書き戻すためじゃないからね。
だからキーやら行数やらを変えたりしても問題なし。

610:デフォルトの名無しさん
05/01/13 23:33:36
初めまして。学生ですが最近企業実践に行っている者です。
JavaとかPHPやPerlなどのWebブラウザ向けの言語は多少かじって
いるのですが、企業実践に行っている会社でVB.netをやることになって
しまい、いろいろ分からないところがあるので教えてください。

System.IO.StreamReaderとか言うのを使い、テキストファイルから
一行ずつ読み込んで、テキストボックスなどに出力し、また次の行を
読み込んで出力するみたいのを作らなきゃダメなんですが、ファイル
の終わりまで(EOF)行ったらファイルの先頭からまた一行読み込んで
出力するようにしてくれと言われました。
つまり、OpenFileDialogで選んだファイルを延々と一行出力しEOFになったら
また一行目から出力するものにしなきゃだめらしいです。
んで、私はファイルポインタをファイルの先頭に戻すやり方が良くわかりません。
seekメソッドとかそれらしきモノはあったのですがいかんせんVB.netに
慣れていないので使いかたがよく分かりません。

自分でも説明が下手だと分かるくらい駄文で申し訳ないのですが、真剣に困っています。
どなたか分かる方がいらっしゃいましたらやり方を教えていただけないでしょうか?

611:デフォルトの名無しさん
05/01/13 23:35:46
一旦クローズして開き直し。
……ところでその仕様じゃ無限ループにならないのか。

612:610
05/01/13 23:38:06
無限ループになりますが、いいらしいです。
タイマーイベントをかまし何秒間に一回出力、それを繰り返すモノ
が作れればいいらしいです。

613:デフォルトの名無しさん
05/01/13 23:43:27
LAN内の共有フォルダの一覧を取得するには、どうしたらいいか誰か教えてください。
最悪の場合、VB.NETじゃなくても構いません。あたりがつけば自分でも調べますので

614:610
05/01/13 23:53:51
>>一旦クローズして開き直し。
>>……ところでその仕様じゃ無限ループにならないのか。

開き直すときにまたOpenFileDialogを使わずに継続して
開きたいのですが、何かいい方法とかソースはないでしょうか?

ほんと質問してばっかで申し訳ありませんがよろしくお願いします。

615:デフォルトの名無しさん
05/01/13 23:55:36
>>613
DOSでNET VIEW

616:デフォルトの名無しさん
05/01/13 23:58:54
>>613
URLリンク(www.gdncom.jp)

>>614
ファイルのパスをどっかに保存しておけば良いだけだろ。

617:デフォルトの名無しさん
05/01/14 00:00:34
>>610
A:

(処理)

goto A

でいいんじゃないの?

618:613
05/01/14 00:12:53
>>615,616
レスありがとうございました。本当に助かりました。

619:デフォルトの名無しさん
05/01/14 13:09:45
>>610
全く関係ないが
久々にまともな日本語を読んだ気がする

620:598
05/01/14 13:59:36
>>599さん
ありがとうございます。joinを使うとできました。
>>600さん
改行文字で区切るっていうのがわかりません。すいません。
>>601さん
ファイルから呼び出して使うので無理でした。

621:デフォルトの名無しさん
05/01/14 14:35:12
Sub threadMain()
Do
 thread1.Sleep(100) <−なんか寝てたり
 If Now.Second = 0 Then <− 意味わかんなかったり
  Timer1.Interval = 100
  Timer1.Start()
  picBar.Height = 500
End If
Loop

この説明が気になります。これは1分に一回Timer1を起動するものですね。
>thread1.Sleep(100) <−なんか寝てたり
この行はあった方がいいのでしょうか? それとも何かまずいのですか。
意図としては、
Now.Second = 0 のチエックは、常時チェックすると
CPUのロスになるのでSleepしています。ただし1秒以上スリープすると
最悪0をチエックできないタイミングが発生します。
本当は thread1.Sleep(990)でも十分だと思いますが、判定中に長い処理が
割り込んだ場合、10msecを超える場合があるかもしれません。それで100msec
にしています。

しかしこれでも、900msec以上も時間がかかる割り込みが入ると問題があります。
I/O制御ですので一回でも0の判定をミスするとまずいのですが、大丈夫でしょうか?



622:デフォルトの名無しさん
05/01/14 14:39:05
質問よろしいでしょうか。

指定したHTMLタグを抽出する.NETのクラスライブラリはありますか。

一応自分で探しましたが見つける事ができなかったので
よろしくお願いします。

623:デフォルトの名無しさん
05/01/14 14:50:56
>>621
なんていうか、泥の台の上で彫刻を作ろうとしている感じだ。
まず一から整理し直して、「なにをするのにこうした、しかしこれこれでうまくいかない」をはっきりさせるべき。

624:デフォルトの名無しさん
05/01/14 15:00:41
>>621
ワーカスレッドから、Windows.Forms.Timerの操作はしてはいけない。
正常動作する保証はないし、たぶん正常に動作しない。
picBarが Windows.Forms.Control の類だとすると、同じくワーカスレッドからの操作はしてはいけない。
正常動作する保証はない。正常に動作することもある。
そもそもTimer1のイベントハンドラはUIスレッドと同期的にしか実行されないわけだから、
フォームにTimer2でも置いて1分毎にTimer1.Start()でもすれば十分。

625:デフォルトの名無しさん
05/01/14 15:12:12
フォームのアイコンを非表示にする方法はありますか?
探しても見つかりませんでした。

626:デフォルトの名無しさん
05/01/14 15:41:39
フォームのアイコンってのが、何を示しているのかわからん。

フォームタイトルの左にある小アイコンのことか?
コンパイル時に適用される既定のアイコンのことか?
フォーム上にPictureBoxか何かで貼り付けたアイコンのことか?

627:デフォルトの名無しさん
05/01/14 15:42:45
>>626
>フォームタイトルの左にある小アイコン

説明が足りませんでしたそれです。

628:598
05/01/14 15:47:12
またわからないことがありました。
Dim mySR As New StreamReader(a.txt)(仮)としてファイルを読み出しました。
Dim mystring As String
Dim name(), rank(), ten() As String
Dim i As Integer = 0
mystring = mySR.ReadLine()
rank = Split(mystring, ",")
ten(i) = rank(1)
name(i) = rank(0)

ファイルの中身は
あ,47
い,92
う,39
といった感じです。これを実行させると
ten(i) = rank(1)の部分で
オブジェクト参照がオブジェクト インスタンスに設定されていません。
と表示されます。
rankの値は1が「47」となっています。0は「あ」です。
rank(0)とrank(1)をそのままlabel.textに入れると表示はされます。
点と名前を分割してファイルから読み出し配列にしたいのですが、なんとかなりますでしょうか?
ながったらしくなってすみません。お願いします。

629:デフォルトの名無しさん
05/01/14 15:56:23
配列もオブジェクトなのでNewが必要。
が宣言時に要素数を指定する事でNewは省略できる。
Splitしたのを入れるrankはSplit内で配列が初期化されているからこちら側でどうこうする必要は無し。

Dim name(1) As Stringとか書けばいいわけだな。

630:デフォルトの名無しさん
05/01/14 15:58:48
省略というかそもそもVBでは配列はNewを使わないけどな。概念的にはともかく。

631:598
05/01/14 16:17:45
>>629-630さん
すばやいレスありがとうございます。
要素数をいれることでできました。

632:デフォルトの名無しさん
05/01/14 16:46:31
>>628
前の方にもあったが

ten(i) = rank(1)

Redim ten(i)
ten(i) = rank(1)

こう変えてやってもできる。

633:デフォルトの名無しさん
05/01/14 16:49:53
初めて書き込みます。VB6ではbasモジュールで宣言すればよかったグローバル変数ですが、
VB.NET 2003でグローバル変数を宣言するには、どうすればいいのでしょうか。
ヘルプや参考書にも載っていなくて・・・。
よろしくお願いいたします。

634:デフォルトの名無しさん
05/01/14 17:03:33
>>633
同じだよ

635:621
05/01/14 17:11:08
>624
>ワーカスレッドから、Windows.Forms.Timerの操作はしてはいけない。
>正常動作する保証はないし、たぶん正常に動作しない。

 そうでしたね。上で指摘いただいてました。すいません。
 
>picBarが Windows.Forms.Control の類だとすると、同じくワーカスレッドからの操作はしてはいけない。
>正常動作する保証はない。正常に動作することもある。

そうなんですか? それではthreadの中で何が動作可能なのでしょうか?
たとえばNow.Second=0のチェックは問題ありませんか?
 DIM I as Integer
I=I+1とかはOKですよね。Iが保証されなくてSleepから復帰すると時々11から50
にJumpしてしまうなんてことはないですよね。
問題となるのはContorolと名のつくもの全部ですか?



636:621
05/01/14 17:13:40
>まず一から整理し直して、「なにをするのにこうした、しかしこれこれで
>うまくいかない」をはっきりさせるべき。
 
あんましはっきりしませんが。
>なにをする
 thread内のdo loop内でNow.Second=0のチエックをしたい。
>こうした
 リスト参照
>しかしこれこれでうまくいかない
 疑問がある。

1)threadないのDoLoopの1loopの時間保証があるか?
 確認する方法はあるか?
2)そのた色色


637:デフォルトの名無しさん
05/01/14 17:16:57
>>635
申し訳ないけれども、もう少し・・・ではなくもっとちゃんとドキュメントを読んだほうがいいような気がします。

URLリンク(www.microsoft.com)
難しげな用語も出てくるけど、無視しないでちゃんと読んでみてください。
こういうちゃんとしたドキュメントを無視して誰かに「もっと簡単な説明」を求めても、
もっといい加減で不適切な説明しか得られないと思います。

638:デフォルトの名無しさん
05/01/14 17:20:13
もっと根元的なところの話だがね >なにをする

>>552のコードなら、わざわざスレッドを用意する必然性が全くない。
picBar.Height-1を行うタイマとpicBar.Height = 500を行うタイマの2つを用意すれば済む話。
//1つでも済むかもね。

639:621
05/01/14 17:31:35
>637
>こういうちゃんとしたドキュメントを無視して誰かに「もっと簡単な説明」を求めても、
>もっといい加減で不適切な説明しか得られないと思います。

 ご指摘ありがとうございます。チラッと読みかけましたがかなり解りにくそうですね。
他の参考書を探してみます。
 
 とりあえずの考え方として、
 threadないでは使ってはいけないものがあるのですね。
キーワードはthreadSafeという言葉でしょうか?
ビルドする時になにかスイッチの設定をするとthreadSafeでないものをthread内部で使うと
ワーニングがでるのでしょうか?
 なにか確認する方法はないですか?


640:デフォルトの名無しさん
05/01/14 17:46:28
C♯相談室 Part20(スレリンク(tech板))の
659から同じような話題で盛り上がってるから参考にどうぞ。
676にワーカスレッドの使い方のサンプルコードがあります。C#だけどVB.NETでも
考え方はさほど変わらないから見てみるといいです。
とりあえずワーカースレッドから使えないのはSystem.Windows.Forms配下のオブ
ジェクトと思ってれば間違いないです。

641:621
05/01/14 18:27:54
>640
 ありがとうございます。確認してみます。
少し読んでみましたが、色々と問題があるみたいですね。

642:デフォルトの名無しさん
05/01/14 20:47:59
>619
自演乙

643:デフォルトの名無しさん
05/01/14 22:25:01
>>642
俺の日本語がおかしいことに気がつかないのか

644:621
05/01/15 00:14:24
>>552のコードなら、わざわざスレッドを用意する必然性が全くない。
>picBar.Height-1を行うタイマとpicBar.Height = 500を行うタイマの2つを用意すれば済む話。
>//1つでも済むかもね。

そうですね。問題があるときに回避する手立ては重要です。しかし、スレッドぐらい
まともに動いてもよいと思いませんか?
 「まともに」と言うのは、thread内で動作が保証されないものがあるなら、コンパイル
時にエラーを出すなり、注意をだしてもいいではないですか。
 しごく、当たり前のことだと思いますが。



次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4840日前に更新/258 KB
担当:undef