VB.NET質問スレ(Part32)
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2009/11/19(木) 10:06:09VB.NET質問スレ(Part31)
http://pc12.2ch.net/test/read.cgi/tech/1250930696/l50
テンプレは >>2-4 あたり
0002デフォルトの名無しさん
2009/11/19(木) 10:07:14http://msdn.microsoft.com/ja-jp/library/ms229284.aspx
どぼん!のVB道のトップページとTipsページ
http://dobon.net/vb/
http://dobon.net/vb/dotnet/index.html
Insider.NET
http://www.atmarkit.co.jp/fdotnet/index.html
宇宙仮面の C# プログラミング
http://uchukamen.com/
.NET TIPS
http://www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html
緑のバイク ★ 初めてのC# プログラム全般
http://homepage3.nifty.com/midori_no_bike/CS/
VB.NETとC#でデザインパターン
http://hccweb1.bai.ne.jp/tsune-1/
匣の向こう側
http://www.ne.jp/asahi/nami/mei/index.html
WisdomSoft
http://wisdom.sakura.ne.jp/
じゃんぬねっと
http://jeanne.wankuma.com/
どっとねっとふぁん - C# Tips And Samples -
http://homepage3.nifty.com/dotnetfan/index.html
http://dotnetfan.org/
C#プログラミングTips
http://www.atmarkit.co.jp/fdotnet/csharptips/index/csharptips_index.html
0003デフォルトの名無しさん
2009/11/19(木) 10:07:41http://www.codeproject.com/vb/net/
the GotDotNet Home Page
http://www.gotdotnet.com/
KEN's .NET
http://www5b.biglobe.ne.jp/~yone-ken/VBNET/index.html
Cetus Links: 19,498 Links on Objects and Components / .NET
http://www.cetus-links.org/oo_dotnet.html
HIRO's.NET
http://vbdotnet.fc2web.com/index.html
@IT:特集 .NET開発者のためのオンライン・リソース・ガイド
http://www.atmarkit.co.jp/fdotnet/special/onlineres/onlineres_01.html
.NETでいきまっしょい!
http://santamartadotnet.hp.infoseek.co.jp/
これがほしかった!厳選サンプルツール集
http://anetm.com/dev/tools/vbdotnet.htm
ぬーやんのdotNET講座
http://www.geocities.jp/nuu_yan/dotNET/index.html
PINVOKE.NET
http://www.pinvoke.net/
WinAPI Database for VB Programmer
http://www.winapi-database.com/
0004デフォルトの名無しさん
2009/11/19(木) 10:08:14http://custom.programming-in.net/
CodeZine
http://codezine.jp/
ConvertCSharp2VB
http://www.kamalpatel.net/ConvertCSharp2VB.aspx
@IT:.NET Tools
http://www.atmarkit.co.jp/fdotnet/tools/index/index.html
SharpLibrary Redirector
http://www.sharplibrary.com/
MSDN アカデミック アライアンス 技術資料
http://www.microsoft.com/japan/msdn/academic/articles/
「300 秒でズバリ !!」&「10 行でズバリ !!」シリーズ
(VS2005) http://www.microsoft.com/japan/msdn/thisweek/300x10/
(VS.NET 2003) http://www.microsoft.com/japan/msdn/thisweek/wednesday/
PAPA'n VB
http://papanvb.i-love-vb.net/
(旧コンテンツ) http://www.mitene.or.jp/~sugisita/index_old.html
VB レスキュー花ちゃん
http://www.bcap.co.jp/hanafusa/dotnet/index.html
VB中学校
http://homepage1.nifty.com/rucio/main/main.htm
初心者から中級者のためのVB
http://www7b.biglobe.ne.jp/~vb_beginner2008/
テンプレここまで
0005デフォルトの名無しさん
2009/11/19(木) 13:32:58VB.NETにおいて、メインメニューから、別のメニューに移る場合の
フォームを開いたり閉じたりするコードは、どのようなものをかいたら
いいのかを教えていただきたいです。
以前、テキストファイルを開いたり、書き込んだりする際に自分で
調べていると、入出力ステートメント(VB.NETではVB専用関数)を用いる方法と、
ファイル・システム・オブジェクトを使用する方法、それとは別に、
.NET Frameworkのクラス・ライブラリを用いる方法がある。
という感じでいろいろな書き方や概念がある事を知ったのですが、
サンプルコードだけではなく、こういう感じに説明がついているサイトを
教えていただきたいです。
なるべくなら、移植性などを考えると.NET Frameworkのクラス・ライブラリを
用いてのコードがいいのですよね?
0006デフォルトの名無しさん
2009/11/19(木) 13:44:51ユーザーコントロールを作りたいと思っています
テストとしてユーザーコントロールを貼り付けたフォームに、
textboxとbuttonを貼り付けて、textboxに入力した値を表示させ
ようと試してみたのですが、値が渡っていてもグラフ自体が表示
されません。グラフをリロードさせるためにはどうすればよいの
でしょうか。よろしくお願いします。
0007デフォルトの名無しさん
2009/11/19(木) 14:49:04内容は若干異なるけれど、このページが参考になるのではと思います。
http://www.atmarkit.co.jp/fdotnet/dotnettips/191resizedraw/resizedraw.html
0008デフォルトの名無しさん
2009/11/19(木) 16:52:50フォームを閉じる
ttp://dobon.net/vb/dotnet/form/closeform.html
このサイトを見ていると、アプリケーションを終了する際のコードは、
スタートアップフォームに指定しているフォームにて
Me.Close() と記述するか、Application.Exit() を記述する、
という事ですが、これは内部の仕様の関係でどちらを使った方が良い
というのはあるのでしょうか。
ちゃんと終了できなかった際の事も考えて、こういう記述にしておく方法も
あるのではとか思ったのですが、ここまで終了処理には気を配る必要は
無いのでしょうか。
Me.Close()
Application.Exit()
何度かソフトを起動したり終了したりするたびに、その都度メモリが
圧迫されていくという可能性が気になりましたので。
0009デフォルトの名無しさん
2009/11/19(木) 17:22:380010デフォルトの名無しさん
2009/11/19(木) 17:29:57気にするな。
0011デフォルトの名無しさん
2009/11/19(木) 17:49:58ありがとう御座います
取り敢えずやってみます
0012デフォルトの名無しさん
2009/11/19(木) 21:11:54>>10
ありがとうございます。
closeを使ってコーディングしたいと思います。
0013デフォルトの名無しさん
2009/11/19(木) 21:17:51さらに、バージョンアップごとに言語の仕様変更がある状況です。
あるソフト開発会社は、これが原因で.NETでの開発は見送り、javaに
切り替える方向で考えている、という方針を聞きました。
VBは、javaなど他の言語に比べて仕様変更が多く、サポート期間が
短い言語なのでしょうか?
0014デフォルトの名無しさん
2009/11/19(木) 21:23:37C#はむしろそれを売りにしています
VBはそれに追従している感じです
0015デフォルトの名無しさん
2009/11/19(木) 21:28:30レスありがとうございます。
一つ、念のために確認しておきたいのですが、「C#はむしろそれを売りに
している」というのは、「仕様変更が少なく、サポート期間が長い」という
意味合いでしょうか?
0016デフォルトの名無しさん
2009/11/19(木) 21:33:100017デフォルトの名無しさん
2009/11/20(金) 01:04:37数値が変化した場合にそれまでの数値より上か下を判断して
BackColorを変えたいのですが、どのような方法が良いでしょうか?
前スレ998さんレスありがとうございます。解決しました。
0018デフォルトの名無しさん
2009/11/20(金) 01:04:570019デフォルトの名無しさん
2009/11/20(金) 05:33:34>VBは6から.NETに変わるにおいて だろ
それまでのVB(6以下)と、VB.NETは別物と言っていいほど違う
.NETいちからやるならJavaやるって判断はまああるだろう
VBのサポート期間はかなり長かった
VB.NETの言語仕様の変更ってのはあんまり記憶にない
追加要素ってのはいっぱいあるが、それを変更というならJavaだってずいぶんと変わってきた
0020デフォルトの名無しさん
2009/11/20(金) 07:14:27何言ってるんですか?
0021デフォルトの名無しさん
2009/11/20(金) 12:20:240022デフォルトの名無しさん
2009/11/20(金) 14:32:03そっちでしたか。ありがとうございます。
0023デフォルトの名無しさん
2009/11/20(金) 14:36:25ラベルの数値が変化した場合に色を変えるのだから、
ラベルの数値を変更する(値を代入する)タイミングで、上か下かを判断し、
BackColorを変えるプログラムを記述する方法が適切だと思います。
なんらかの理由でラベルの値が取得できない(表示が文字であるなど)
のであれば、そのフォームのメンバ(数値型変数)にそれに格納し、
その値で判断するしかないでしょう。
0024デフォルトの名無しさん
2009/11/20(金) 14:57:56ご回答ありがとうございます。
java の場合も、リファレンスには、使用が推奨されないクラスが結構
ある事から、言語の仕様変更は多くあることが推測されます。
検索してみると、Win7でもVB6がサポートされるということでした。
ありがとうございました。
ハードウェアの性能と共に技術的な需要が変わっていくので
仕様変更は仕方が無いとしても、その言語のサポート期間が
気になっていましたが、VBの方もOSが変わってもサポートが続いて
いますので、それでの開発も問題なさそうですね。
0025デフォルトの名無しさん
2009/11/20(金) 16:38:520026デフォルトの名無しさん
2009/11/20(金) 16:40:100027デフォルトの名無しさん
2009/11/20(金) 19:25:380028デフォルトの名無しさん
2009/11/20(金) 21:14:58VB6プログラマがプログラム自体に作りこんだセキュリティホールのリスクの方が遥かに大きい
0029デフォルトの名無しさん
2009/11/20(金) 21:37:39まったくもってはげしく同意
0030デフォルトの名無しさん
2009/11/20(金) 22:40:39セキュリティホールって意味わかって言ってるのかそれw
0031デフォルトの名無しさん
2009/11/20(金) 22:44:400032デフォルトの名無しさん
2009/11/21(土) 00:43:06何もおかしくないけど
0033デフォルトの名無しさん
2009/11/21(土) 02:25:38マウス操作だけでゲームを制作できるソフト。
プログラミングの知識がなくても、RPG 、シューティング、アクション、パズル、
アドベンチャーなどほぼすべてのジャンルのゲームを制作できる。
作ったゲームを Windows で動作する実行ファイルに変換したり、
Web ブラウザで動く Java アプレットとしても出力可能。
OS 問わずに実行できる Java アプリに変換にすることもできる。
願わくば、豊富な時間に恵まれて、
これからプログラミングを始めようとしている諸君らが、
プログラムの勉強を思いとどまってくれますように。
http://www.forest.impress.co.jp/docs/news/20091120_330540.html
>“Multimedia Fusion 2”は、豊富に用意されたオブジェクトをマウス操作で
>配置していくだけでゲームを制作できるソフト。キャラクターの動きなども、
>あらかじめ用意されたコマンドを組み合わせるだけで表現可能。
>プログラミングの知識がなくても、RPGやシューティング、アクション、
>パズル、アドベンチャーなどほぼすべてのジャンルのゲームを制作できる。
>製品版では、制作したゲームをWindowsで動作する実行ファイルへ変換できるほか、
>Webブラウザーで実行できるJavaアプレットとしても出力可能。
>Mac OSでも利用可能なJavaアプリケーションへ変換することもできる。
0034デフォルトの名無しさん
2009/11/21(土) 10:40:430035デフォルトの名無しさん
2009/11/21(土) 12:23:17何を言ってるのか分からない。
0036デフォルトの名無しさん
2009/11/21(土) 13:07:27VS2008のVB環境ですが理解しようと苦心しています。
いくつかサイトを見て
http://634.ayumu-baby.com/vb/vb_delegate.html
とかは他よりかなり判り易い気して
「利用方法」部とかは判った気にはなるのですが
「サンプルコード」でコンストラクタ?何するPG??となり
最初からしっかり読もうと最初の「デリゲートとは」の部分で
関数ポインタ?委譲(コンポジション)??
とか、実際にコードを作るまでには至らない状況です。
ドラクエに例えて..とかとかネタで言いたい気もするんですが
なんかこの部分の考え方みたいなモノをどなたかレクチャーしてもらえないでしょうか?
助けて下さい、よろしくお願いします。
0037デフォルトの名無しさん
2009/11/21(土) 13:21:070038デフォルトの名無しさん
2009/11/21(土) 13:36:24その上で、デリゲートやイベントについては本当の意味で理解するにはデザインパターンも必要かも
0039デフォルトの名無しさん
2009/11/21(土) 15:13:490040デフォルトの名無しさん
2009/11/21(土) 16:10:45流儀ということは無いと思う。
ま、場合によっては複数人でそのコードを書く場合、引継ぎを考えて
そういったルールを設ける場合もあるかもしれないけれど。
もしエラーが起きた場合、どこで起きているかを確認する為、
必ず返り値を取得し、確認するというルールがあるというのも
きいたことはある。
0041デフォルトの名無しさん
2009/11/21(土) 17:10:410042デフォルトの名無しさん
2009/11/21(土) 17:12:570043デフォルトの名無しさん
2009/11/21(土) 18:08:39意味のないものをわざわざ記述する意味は通常ないだろう。
0044デフォルトの名無しさん
2009/11/21(土) 18:41:46&H0=&H00で合ってる?
0045デフォルトの名無しさん
2009/11/21(土) 18:47:130046デフォルトの名無しさん
2009/11/21(土) 19:08:230047デフォルトの名無しさん
2009/11/21(土) 23:37:24文字を変更する際に、数値が変更前より上か下かでラベルの色を変えているのですが、
3秒後に元の色に自動的に戻るようにしたいのですが、どんな方法が良いでしょうか?
3秒未満にまた色の変更があったらそこからまた3秒をカウントしたいです。
たくさんのラベルの色を戻す処理が重なっても負荷が少なく、
フォームがフリーズしたような状態にならないようにしたいのですがどんな方法が良いでしょうか?
>>23さんありがとうございます。
0048デフォルトの名無しさん
2009/11/22(日) 01:31:24メンバ変数か静的ローカル変数でカウンタ持ってタイマーのイベントが動く毎にカウントアップ
3回目が来たら色を元に戻せばいんじゃないかな?
途中で色が変わったらカウンタをクリアすればいいし
フォームを止めたくないならDoEvents書くかワーカスレッド作るとか
初心者なんで見当違いだったらすいません
というわけで質問させて下さい。
開発環境 :VB2005EE
データベース : SQLSERVER2005EE
接続はSqlClientを利用しています。
データベースに20万件の初期データを生成するのですが
処理開始から終了まで平均して5分ほどかかります
大雑把に処理内容としては、SqlConnectionで接続して
SqlCommandからInsert文をパラメータ差し替える形で発行します
課題として提出したらもうちょっと早くなるようにしてみてと
言われてしまい途方にくれています
やはり作りが問題なのでしょうか?
こういった場合どうするのが一般的なのでしょうか?
また、あくまでVBから実行するようにとのことでストアドプロシージャは
使えません
微妙な内容で申し訳有りませんが宜しくお願いいたします
0049デフォルトの名無しさん
2009/11/22(日) 02:28:05http://msdn.microsoft.com/ja-jp/library/microsoft.sqlserver.dts.tasks.bulkinserttask.bulkinserttask.aspx
後、トランザクションは明示的に指定しているかい?
SQL SERVERは既定のトランザクション管理モードを自動コミットとしているから
単純にINSERT文を発行するとその度にAUTO COMMITされる
大量に処理する場合は最初にBEGIN TRANSACTION、最後にCOMMIT TRANSACTIONとして
TRY-CATCHで例外をROLLBACKしてやった方がいい
まぁVB.NETというより内容的にSQL SERVERかな
0050デフォルトの名無しさん
2009/11/22(日) 10:18:30ファイルに吐きだして、BCP で突っ込む、ってのが一番速そうだけど。
0051デフォルトの名無しさん
2009/11/22(日) 17:44:58「WiimoteException はハンドルされませんでした。」のダイアログが出るです。
exをExceptionにしてもcatchされずに↑の例外ダイアログが出るです。
どうなってるの?
Try
' Wii リモコンに接続する
wiimote.Connect()
Catch ex As WiimoteException
MessageBox.Show(ex.Message)
End Try
0052デフォルトの名無しさん
2009/11/22(日) 17:55:200053デフォルトの名無しさん
2009/11/22(日) 17:57:330054デフォルトの名無しさん
2009/11/22(日) 17:58:320055デフォルトの名無しさん
2009/11/22(日) 18:04:490056デフォルトの名無しさん
2009/11/22(日) 18:19:24wiimote.Connect()にブレークポイントして調べた。
0057デフォルトの名無しさん
2009/11/22(日) 18:20:070058デフォルトの名無しさん
2009/11/22(日) 18:25:590059デフォルトの名無しさん
2009/11/22(日) 18:29:23ブレークポイントしたらどうなったんだ?
普通に考えれば有り得ない気がするんだが。
ちなみにキャッチブロックにブレークポイント仕掛けても止まらないんだよね?
0060デフォルトの名無しさん
2009/11/22(日) 19:12:340061デフォルトの名無しさん
2009/11/22(日) 19:51:18オチというか、たぶんそうだろうねえ。
ならそのまま[F5]押して継続すれば何も問題ない。
0062デフォルトの名無しさん
2009/11/22(日) 22:58:380063デフォルトの名無しさん
2009/11/22(日) 23:03:010064デフォルトの名無しさん
2009/11/22(日) 23:16:13ゼロから自作ですか?
0065デフォルトの名無しさん
2009/11/22(日) 23:18:400066デフォルトの名無しさん
2009/11/22(日) 23:18:570067デフォルトの名無しさん
2009/11/22(日) 23:25:35ベースの方でそういう機能がないので、改造は面倒だろうね。
いちから作っちゃった方が早いと思うよ。
0068デフォルトの名無しさん
2009/11/22(日) 23:31:13作ると言ってもまるで状況が想像できないのですがすごく難しそうですね
ボタンでも無理そう><
0069デフォルトの名無しさん
2009/11/22(日) 23:38:31[][][][][][][][][][][][][][][][][]
みたいに四角を描画していけばいいわけだ。左から、緑・黄・赤で塗りつぶすと。
0070デフォルトの名無しさん
2009/11/22(日) 23:46:50WindowsControlLiblaryというプロジェクトを開いて
フォームの枠(コントロールを何も置かない状態のフォーム)みたいなのを
レベルメーターみたいにしようと思ってやっているのですが、ここまではあってるでしょうか?
0071デフォルトの名無しさん
2009/11/22(日) 23:51:53いま君が開いてるのはユーザーコントロールだけどどうせデザイナ使えないから意味ない
0072デフォルトの名無しさん
2009/11/22(日) 23:56:41ありがとうございます。
0073デフォルトの名無しさん
2009/11/23(月) 00:01:15できてから、コントロールにすればいいし。
0074デフォルトの名無しさん
2009/11/23(月) 00:08:21オーバーライドとかわかってないだろ
0075デフォルトの名無しさん
2009/11/23(月) 00:13:50誰かが作ったのを探し始めてた;(vb レベルメーター コントロール 検索とかw
既存のプログレスバーのコードは見れないでしょうか?
0076デフォルトの名無しさん
2009/11/23(月) 00:15:47見れても読めるとも思えないけどな、C言語だろうし
0077デフォルトの名無しさん
2009/11/23(月) 00:17:55VB6 だろうけど、こんなのはあった。
http://www.a1vbcode.com/a1vbcode/app-1490.asp
0078デフォルトの名無しさん
2009/11/23(月) 00:18:150079デフォルトの名無しさん
2009/11/23(月) 00:24:15アホだな
0080デフォルトの名無しさん
2009/11/23(月) 00:53:08暇だったからサンプルコードを書いてみたよ。
ただ、手間だからLED状のブロック表示は諦めて単純な塗りつぶしにして手を抜いてある。
これなら意外と簡単でしょ?
Public Class LevelIndicator : Inherits Control
ReadOnly GreenZoneColor As Color = Color.Green
Const YellowZoneThreshold As Double = 60
ReadOnly YellowZoneColor As Color = Color.Yellow
Const RedZoneThreshold As Double = 90
ReadOnly RedZoneColor As Color = Color.Red
Private mPercent As Double = 0
Public Property Percent() As Double
Get
Return mPercent
End Get
Set(ByVal value As Double)
value = Math.Max(0, value)
value = Math.Min(100.0R, value)
If value <> mPercent Then
mPercent = value
Me.Refresh()
End If
End Set
End Property
Private Function PercentRangeToRect(ByVal percentFrom As Double, ByVal percentTo As Double) As Rectangle
Dim left As Integer = CInt(Me.Width * percentFrom / 100)
Dim right As Integer = CInt(Me.Width * percentTo / 100)
Dim width As Integer = right - left
Return New Rectangle(left, 0, width, Me.Height)
End Function
0081デフォルトの名無しさん
2009/11/23(月) 00:54:26Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
MyBase.OnPaint(e)
Dim g As Graphics = e.Graphics
Dim greenRect As Rectangle = PercentRangeToRect(0, Math.Min(Percent, YellowZoneThreshold))
Using br As Brush = New SolidBrush(GreenZoneColor)
g.FillRectangle(br, greenRect)
End Using
If Percent >= YellowZoneThreshold Then
Dim yellowRect As Rectangle = PercentRangeToRect(YellowZoneThreshold, Math.Min(Percent, RedZoneThreshold))
Using br As New SolidBrush(YellowZoneColor)
g.FillRectangle(br, yellowRect)
End Using
End If
If Percent >= RedZoneThreshold Then
Dim redRect As Rectangle = PercentRangeToRect(RedZoneThreshold, Math.Min(Percent, 100))
Using br As New SolidBrush(RedZoneColor)
g.FillRectangle(br, redRect)
End Using
End If
Dim rect As Rectangle = Me.ClientRectangle
rect.Width -= 1 : rect.Height -= 1
g.DrawRectangle(Pens.DimGray, rect)
End Sub
End Class
0082デフォルトの名無しさん
2009/11/23(月) 01:00:17早速やってみます!ありがとう!
0083デフォルトの名無しさん
2009/11/23(月) 01:15:42完璧すぎてすご過ぎ
ありがとう!!!!!!!!!!!!!!
さっそくLEDみたいにするのをやってみます。
感謝!感謝!
0084デフォルトの名無しさん
2009/11/23(月) 01:59:400085デフォルトの名無しさん
2009/11/23(月) 03:28:060086デフォルトの名無しさん
2009/11/23(月) 09:23:51場合によっては具体的なコードをここでさらして、処理過程を見直した方が
良いと思います。
DataTableを使ってまとめてupdateをしてみた場合はどうなのかとか、
いくつか実験をやってみてはいかがでしょうか。
0087デフォルトの名無しさん
2009/11/23(月) 11:36:50フォーム上にいくつか連名でオブジェクト(テキストボックス)を配置し、
その各テキストボックスにアクセスする場合のコードの書き方を教えて下さい。
AccessVBAだと、以下のような感じにコードを書く事が出来ますが、VB.NETだと
me(....)を書いた時点でエラーが表示されてしまいます。
dim str1 as string
dim i as integer
str1="textbox"
i=3
me(str1 & i)="a"
ループで処理をしたいので、こんな感じにコードを書きたくない場合の話です。
textbox3.text="a"
0088デフォルトの名無しさん
2009/11/23(月) 11:42:02CType(Controls(str1&i), TextBox).Text = "a"
みたいな感じでできる気がするけどあまり褒められたものではない
VBAとは全く別の言語だからVBAではどうとかいう考え方は捨てた方がいい
0089デフォルトの名無しさん
2009/11/23(月) 11:48:45すばやいレスありがとうございます。
早速コードを書いて試してみたところ、動作しました。
VBAとは別の言語であるという考えで勉強していこうと思いますが、
一つだけ追加で質問させてください。
VB.NETの場合は、フォーム上にテキストボックスをたくさん配置して
おいて、それらを一括ですべてクリアにするとか、値を取得して
配列に格納するとかいう場合、以下のようなコードを書くのが一般的
ということになるのでしょうか。
Me.TextBox1.Text = "a"
Me.TextBox2.Text = "a"
Me.TextBox3.Text = "a"
Me.TextBox4.Text = "a"
Me.TextBox5.Text = "a"
・
・
・
0090デフォルトの名無しさん
2009/11/23(月) 11:49:59フォームの既定のプロパティなのかな?
こんなことができて嬉しい場面が思い浮かばないが・・・
0091デフォルトの名無しさん
2009/11/23(月) 11:51:540092デフォルトの名無しさん
2009/11/23(月) 11:52:410093デフォルトの名無しさん
2009/11/23(月) 11:55:20コードが少なくて済むというメリットがあると思います。
0094デフォルトの名無しさん
2009/11/23(月) 11:57:29配列とは、どのような意味なのでしょうか?
TextBoxに格納する文字列を、TextBoxとは別に配列を宣言し、
それに格納しておいて・・・その後の処理をどうしたらいいのかの
イメージがつきません。すみません。
0095デフォルトの名無しさん
2009/11/23(月) 12:03:09配列っていうのは本当はいい答えじゃない。
要は何らかのコレクションになっていれば、そのコレクションが含んでいるアイテムを
「一括ですべて(まとめて)」操作することも出来るでしょ。
例えばVBのコントロール配列だって、君の書いているVBAのMe(コントロール名)だって
そういうアイデアだよね?
要はそのコレクションを自分で用意すればいいってこと。
それはList(Of T)だったり、Dictionary(Of TKey, TValue)だったり、
ただの配列だったり、目的に合わせて適切なものをね。
0096デフォルトの名無しさん
2009/11/23(月) 12:21:07レスありがとうございます。
となると、VB.NETの場合は、必ず以下のような関数を作らないといけなく
なってくるという考えでよろしいのですよね?
・格納する配列の内容をフォーム上のオブジェクトに反映する。
・フォーム上のオブジェクトの内容を配列に格納する。
VBAでは、直接フォーム上のオブジェクトを操作していたので、
VB.NETのこの、つなぎを行う処理を書かなければならないという
考え方にはちょっと違和感を感じますが、慣れる様にしたいと思います。
0097デフォルトの名無しさん
2009/11/23(月) 12:28:330098デフォルトの名無しさん
2009/11/23(月) 12:30:340099デフォルトの名無しさん
2009/11/23(月) 12:30:36一般にはクラスやコレクションでデータだけ別管理にした方がUIと分離できて良い方法
VBAだろうと同じ
0100デフォルトの名無しさん
2009/11/23(月) 13:08:29全般的に言うと少ないとなるでしょうね。しかし、似たようなコードを
たくさん書かないといけなくなったりすると、何とかならないかなと
おもったりするんですよ。
>>98
詳細をお願いします。
>>99
確かにMVCモデルという言葉があるように、データと表示は分離した
作り方をした方がいいと思いましたが、型指定されたDataSetみたいな
便利機能がないのが、今のところひっかかっています。
(プログラムをしていけば、慣れていくのだと思いますが)
0101デフォルトの名無しさん
2009/11/23(月) 13:11:45それが>>88のControls
0102デフォルトの名無しさん
2009/11/23(月) 13:24:45一括クリアーも配列への格納も楽だよー
0103デフォルトの名無しさん
2009/11/23(月) 13:29:36解説ありがとうございます。
>>102
ああ、その手がありましたね。
0104デフォルトの名無しさん
2009/11/23(月) 13:34:10頭でっかちになる前に、手を動かせよ。
0105デフォルトの名無しさん
2009/11/23(月) 14:45:23グループ名プロパティ提供してグループ名で一括操作とかな。
0106デフォルトの名無しさん
2009/11/23(月) 15:13:45私は、コードを書くよりも、いろいろ考えすぎてたようです。
もっといろいろなプログラムを作る事に集中します。
>>105
私の知識不足で、直感的にどのような操作なのかがイメージ出来ません
でしたが、出していただいたキーワードを元に検索などかけて調べて
みます。ありがとうございます。
0107デフォルトの名無しさん
2009/11/23(月) 15:48:10とりあえずブログラムは経験だから頑張れ
0108デフォルトの名無しさん
2009/11/23(月) 16:36:33VB.NET Express のコントロールには、Lineなどというものはないのでしょうか。
フォーム上に、区切りとして、単に線を引いたり、枠線を描いたりしたいのですが。
0109デフォルトの名無しさん
2009/11/23(月) 16:47:340110デフォルトの名無しさん
2009/11/23(月) 16:55:25Lineとかそういうのが使えるやつ。
0111デフォルトの名無しさん
2009/11/23(月) 16:57:33レスありがとうございます。
線や四角を描く部分をlabelで代用する場合、具体的にプロパティはどのように設定したら
よいのでしょうか?
BorderStyle を FixedSingle にするとラベルに枠が出来るというまでは思いつくの
ですが、その後、線にしたり、任意の大きさの四角にする部分が分かりません。
0112デフォルトの名無しさん
2009/11/23(月) 17:02:020113デフォルトの名無しさん
2009/11/23(月) 17:07:18Dim FormGraphics as System.Drawing.Graphics
FormGraphics = Me.CreateGraphics()
FormGraphics.DrawLine(NewPen, 0, 0, 300, 300)
NewPen.Dispose()
FormGraphics.Dispose()
こんな感じで無理だっけ?
0114デフォルトの名無しさん
2009/11/23(月) 17:12:19直線
http://www.atmarkit.co.jp/fdotnet/dotnettips/792winrectshape/winrectshape.html
四角
0115デフォルトの名無しさん
2009/11/23(月) 17:14:09http://www.atmarkit.co.jp/fdotnet/dotnettips/781winlineshape/winlineshape.html
こっちが直線
114の直線はlabelで代用した直線
0116デフォルトの名無しさん
2009/11/23(月) 17:42:41>>110>>112
拡張コントロールを使うんですね。
>>113
出来れば、フォーム上のオブジェクトとしてマウスで操作する
方法で配置したいと思っていたのです。
もし、その方法が無理であれば、紹介していただいたコードを書く
方法を使うしかないでしょうね。
>>114>>115
labelで代用する場合は AutoSize を false に変えたらよかったのですね。
上手くリサイズが出来なくて苦労してましたが出来ました。
紹介していただいた@ITのサイトも見てみます。
0117デフォルトの名無しさん
2009/11/23(月) 18:27:41Dim num As Integer
という変数をTextBoxなどのように変更のイベントを発生させるにはどのようにしたら良いでしょうか?
0118デフォルトの名無しさん
2009/11/23(月) 18:29:260119デフォルトの名無しさん
2009/11/23(月) 19:10:05その変数を自分で変更したら自分で定義した好きなイベントを発生させる
0120デフォルトの名無しさん
2009/11/23(月) 20:20:28Vector3[] vertexs;
vertices = new Vector3[vertices.Length];
0121デフォルトの名無しさん
2009/11/23(月) 20:24:140122デフォルトの名無しさん
2009/11/23(月) 20:26:23そんなの自分で調べられないと絶対無理だよ
C#どころかC++も読めないと厳しい
0123デフォルトの名無しさん
2009/11/23(月) 20:33:38URLからスレッドのHTMLを取得することはできたのですが、そこからどうすればいいのかわかりません。
プログラムの引数に指定範囲の最小、最大を与えてその範囲内のレスの本文とIDを取得したいのですが。
0124デフォルトの名無しさん
2009/11/23(月) 20:34:51VBでは無理
0125デフォルトの名無しさん
2009/11/23(月) 20:38:32正規表現あたり
.dat取得したほうが解析は楽だと思うけど
0126デフォルトの名無しさん
2009/11/23(月) 20:42:52Datファイルを調べれば幸せになれるかも
0127デフォルトの名無しさん
2009/11/23(月) 20:53:08Datファイルからの取得のほうが楽そうですね。
Datファイルからの解析となると、Datファイルのパスを取得、レス番に指定範囲行を代入、ID、本文を格納という流れになるのかな。
0128デフォルトの名無しさん
2009/11/23(月) 21:43:330129デフォルトの名無しさん
2009/11/24(火) 02:13:58投稿するわけじゃないんだから、POSTは関係ないでしょ。
0130デフォルトの名無しさん
2009/11/24(火) 03:02:39「ソフト作りたいのですが、設計ができません」
じゃ、教えるというよりも
代わりに考えて、といってるようなもの。
作りたいと思ったなら自分で考えろ。
0131デフォルトの名無しさん
2009/11/24(火) 03:03:320132デフォルトの名無しさん
2009/11/24(火) 10:09:43以下のスレに投稿したのですが、コーディングや設計に関する部分で、
経験豊富なプログラマーの方々が思う指摘というものを受けてみたいと思い、
こちらで質問をしてみました。
http://pc12.2ch.net/test/read.cgi/tech/1258895847/52-59n
ざっと読んでみたところ、こちらのスレは全般的に、TIPS系の質問が
多いようですので、もし、こういった質問がスレ違いということでしたら
該当スレへの誘導をお願いしたいと思います。
どうぞよろしくお願い致します。
0133デフォルトの名無しさん
2009/11/24(火) 10:16:09ローカルに保存したdatは、テキストファイルをどのような形式で表示
させるかという話だと思う。
テキストファイルの操作について分からなければ、ファイルのopenやら
closeはどうやったらいいのか、といったレベルから勉強しなおした方が
良いと思う。
0134デフォルトの名無しさん
2009/11/24(火) 15:00:44とりあえずテキストファイルの操作を学べばおk
0135デフォルトの名無しさん
2009/11/24(火) 15:44:43コンボボックスやテキストボックスにて、未入力や未選択、任意に入力内容を
消した状態を確認するコードは、
If Me.TextBox1.Text = "" Then
というコードのみでよいのでしょうか?それとも、
If Me.TextBox1.Text = "" Or IsNothing(Me.TextBox1.Text) Then
という感じに、null判定も入れておくべきなのでしょうか?
細かいところですが、ある程度はユーザの操作内容を確実に取得できる
ようなコードを書いておく習慣をつけておきたいと思い、質問してみました。
0136デフォルトの名無しさん
2009/11/24(火) 15:54:17(カスタムコントロールでTextをオーバーライドしてnullを返すような実装にわざとしない限り)、
一応String.IsNullOrEmptyで判断しておけば
0137デフォルトの名無しさん
2009/11/24(火) 16:06:50null判定は不要だったのですね。
String.IsNullOrEmpty で判断したコードを書くように
したいと思います。ありがとうございます。
0138デフォルトの名無しさん
2009/11/24(火) 16:33:25http://dobon.net/vb/dotnet/form/savefiledialog.html
を参考にファイル保存ダイアログを出しているのですが
sfd.OverwritePrompt = True
'存在しないパスが指定されたとき警告を表示する
'デフォルトでTrueなので指定する必要はない
で上書きの警告ダイアログを出したとき
通常は「はい」ボタンがデフォルトになっているのですが
これを「いいえ」ボタンをデフォルトにすることは可能でしょうか?
0139デフォルトの名無しさん
2009/11/24(火) 17:06:40無理だったと思う
0140デフォルトの名無しさん
2009/11/24(火) 17:09:21やはりそうですか。ありがとうございました。
0141デフォルトの名無しさん
2009/11/24(火) 17:10:50ちょっとまて
それをFalseにして自分で警告ダイアログを表示すればいいんじゃね
0142デフォルトの名無しさん
2009/11/24(火) 17:30:09そもそも 「存在しないパスが指定されたとき警告ダイアログを表示する」
なのに上書き警告ダイアログを表示するってのがよく分からん
0143デフォルトの名無しさん
2009/11/24(火) 17:39:46それはおそらくコピペする行を間違えているのだろうw
>>138
OverwritePromptは、TrueかFalseしか指定できないので、それを
設定する方法では出来ない。となるが、>>141にあるように、
自作で、上書きしようとしているかどうかをチェックし、
警告ダイアログをMessagebox.Show( で表示すると可能ではある。
0144デフォルトの名無しさん
2009/11/24(火) 18:02:53自分でやればいいのか。ありがとうございました。
0145デフォルトの名無しさん
2009/11/24(火) 18:49:06調べてたが、自作する場合はダイアログが一旦閉じてしまう方法
しかなさそうだな。(ま、それでキャンセルしたら再度ダイアログが
開くようにすればいいだけともいえるのだが)
こんな感じになるんだろうな。
If sfd.ShowDialog() = DialogResult.OK Then
If System.IO.File.Exists(sfd.FileName) Then
' filePathのファイルは存在する
MessageBox.Show("上書きしてもよか?")
End If
End If
0146デフォルトの名無しさん
2009/11/24(火) 20:30:58一番最初に開くフォーム(Form1)で設定ファイルから値を読込み、それが、
他のフォームにおいても使えるようにしたいのですが、.NETの場合は、
オブジェクト指向言語なので、グローバル変数に値を格納というのは
良くないのですよね?
では、具体的にはどうしたらよいのでしょうか?
VBAの際は、モジュールを追加して、global 〜〜って感じに
変数を宣言すればよかったのですが。
0147デフォルトの名無しさん
2009/11/24(火) 20:36:50同じ時間が重複して書き込まれることがよくあるのですが、これは何が原因でしょうか?
0148デフォルトの名無しさん
2009/11/24(火) 20:47:41public 変数 as integer
こんな感じでいけた気がする
0149デフォルトの名無しさん
2009/11/24(火) 20:50:46>>147
>Timerイベントで一秒に一回ファイルストリームに1行ずつ書き込んでいるのですが、
ファイルストリームに書き込むとは?
>同じ時間が重複して書き込まれることがよくあるのですが、これは何が原因でしょうか?
現在の時間を書き込むってこと?kwskお願い
0150149
2009/11/24(火) 20:52:440151デフォルトの名無しさん
2009/11/24(火) 20:56:41オブジェクト指向言語だからってオブジェクト指向で書く必要はない
オブジェクト指向する気ないんだったら>>147で十分
本当に勉強する気があるならJavaでもやった方がいい
0152デフォルトの名無しさん
2009/11/24(火) 21:08:27一秒ごとに変化するデータを時間と一緒に書き込んでいます。
今日日中は無人でパソコンを使いながら実行していたのではないのですが
確認したら重複がたくさんありました。
0153デフォルトの名無しさん
2009/11/24(火) 21:10:03ファイルストリームに書き込むというのは
StreamWriterのWriteLine(Str)という方法です。
連投スマソ
0154デフォルトの名無しさん
2009/11/24(火) 21:10:320156デフォルトの名無しさん
2009/11/24(火) 21:21:03時間がとんだ時に取り戻すように同じ時間を書き込んでいる感じなのですが、
これはパソコンの速度の限界なので回避しようがないでしょうか?
0158デフォルトの名無しさん
2009/11/24(火) 21:26:23どちらも別のスレッドで呼び出されるから扱いには注意
0159デフォルトの名無しさん
2009/11/24(火) 21:58:27どうもありがとうございました。
0160デフォルトの名無しさん
2009/11/24(火) 22:06:510161デフォルトの名無しさん
2009/11/24(火) 22:13:27vbNullCharは0
""は空のStringオブジェクト
0163デフォルトの名無しさん
2009/11/24(火) 22:46:11レスありがとうございます。
オブジェクト指向する気が無いコードの書き方があるのも
分かりましたが、もし、オブジェクト指向する気がある場合だと、
どういう考え方になるのでしょうか?
値が格納されたクラス(もしくは構造体)を設定し、そのインスタンスを
Form2がopenする際に渡すという考え方になるのでしょうか?
0164デフォルトの名無しさん
2009/11/24(火) 22:49:21あと特別な理由(主にパフォーマンス)がなければ構造体は使わずクラスを使う
0165デフォルトの名無しさん
2009/11/24(火) 23:16:35あえて煽ったり釣ったりした方が、適度なマジレスが的確に返ってくる
度を越すと誰にも相手されずにおじゃんだけどな !
0166デフォルトの名無しさん
2009/11/24(火) 23:25:45ありがとうございます。
0167デフォルトの名無しさん
2009/11/24(火) 23:27:13わけのわからんかけひきはしなくていい。
0168デフォルトの名無しさん
2009/11/24(火) 23:32:16いやいやそんなタコ足配線みたいなコードはOOPしようがしまいが
普通のセンスをしてれば「やりたくない」と思うはず。
冷静に考えてみ?
どうして他のフォームの設定値を"Form1"が管理するの?
なんでその設定値を必要とするフォーム自身で管理しようと思わないの?
その方がずっとわかりやすいじゃない。
0169デフォルトの名無しさん
2009/11/24(火) 23:53:050170デフォルトの名無しさん
2009/11/25(水) 00:53:590171デフォルトの名無しさん
2009/11/25(水) 00:56:380172デフォルトの名無しさん
2009/11/25(水) 01:00:290173デフォルトの名無しさん
2009/11/25(水) 14:30:320174デフォルトの名無しさん
2009/11/25(水) 15:14:02「IPCポートに接続できません。アクセスが拒否されました。」と出ます。
TCPの時は問題なかったのですが、IPCだとACL設定がいるようで、その方法がわか
りません。
誰にでもアクセス許可させたいんですが、どのようにACL設定したらよいのでしょうか。
下記のようにしてダメでした(すいません、C#です...)。
SecurityIdentifier allUserSid = new SecurityIdentifier(WellKnownSidType.WorldSid, null);
DiscretionaryAcl dacl = new DiscretionaryAcl(false, false, 1);
dacl.AddAccess(AccessControlType.Allow, allUserSid, -1, InheritanceFlags.None, PropagationFlags.None);
CommonSecurityDescriptor securityDescriptor = new CommonSecurityDescriptor(
false, false,
ControlFlags.GroupDefaulted | ControlFlags.OwnerDefaulted | ControlFlags.DiscretionaryAclPresent,
null, null, null, dacl);
App.configに何か書くサイトもありましたが、Expressで空のプロジェクトから自前でW
indowsサービスにしたので、App.configがなく、自前で下記を追加したら「'application'
のスキーマ情報が見つかりませんでした。」と怒られました。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.runtime.remoting>
<application>
<service>
<wellknown mode="SingleCall" type="Server.MyRemoteObject, Server" objectUri="MyRemoteObject.rem" />
</service>
<channels>
<channel ref="ipc" portName="MyIpcChannel" authorizedGroup="Users"/>
</channels>
</application>
</system.runtime.remoting>
</configuration>
どうしたらよいのか教えてください...
0176デフォルトの名無しさん
2009/11/25(水) 17:24:17石を置くときにクルッと一回転させてから置くような感じの効果を付けたいのですが
どのように考えればいいんでしょうか?
よろしくお願いします
0177デフォルトの名無しさん
2009/11/25(水) 17:27:24何枚か回転途中の絵を用意しといてタイマで絵を切り替えながら描画する
0178176
2009/11/25(水) 17:29:18本当は円柱で描きたかったのですがそちらの方もやり方がわかりませんでしたので・・・
では改めてよろしくお願いします
0179デフォルトの名無しさん
2009/11/25(水) 17:29:42石の横幅を小さくしてから大きくする
0180デフォルトの名無しさん
2009/11/25(水) 17:31:23黒と白の石をずらして重ねてみるとか
0181176
2009/11/25(水) 17:32:24>>177、>>179
両方のやり方で作ってみて見た目が良かった方でいこうと思います
どうもありがとうございました
0183デフォルトの名無しさん
2009/11/26(木) 00:32:02HTMLソースをString変数に読み込んで、内容を正規表現で調べているのですが、
mshtmlクラスのように、GetElementByTagNameなどのメソッドで
データの取得や設定が簡単に扱えるようにするにはどんな方法でやれば良いでしょうか?
0184デフォルトの名無しさん
2009/11/26(木) 00:37:250185デフォルトの名無しさん
2009/11/26(木) 00:51:580186デフォルトの名無しさん
2009/11/26(木) 00:59:56DOMというのですか。この方法はAxWebBrowserを使う時の方法しか知らないのですが、
WebRequestとWebResponseクラスを使った方法でも使うことが出来るでしょうか?
ヒントでも良いので方法を教えて頂けると助かります。
0187デフォルトの名無しさん
2009/11/26(木) 01:06:38こーゆーやつ。
0188デフォルトの名無しさん
2009/11/26(木) 07:22:24(VB.NETというよりも、IDEに関係する話かもしれませんが)
プロジェクトを作成し、プログラムを実行すると、ディフォルトでは
Debugにexeが格納されますが、このexeのみを別のPCへコピーして
実行してみる事に問題はありますか?
基本は、インストーラーを作成して・・・となるのでしょうが、
私が作っているプログラムの規模が小さいのもあり、この操作方法で
今のところうまく行っているのですが、これによってどういった不具合が
予測されるかが良く分からない状況です。
どういう問題や不具合が起きると考えられるのかを教えて下さい。お願いします。
0189174
2009/11/26(木) 07:44:24了解しました。
ありがとうございます。
0190デフォルトの名無しさん
2009/11/26(木) 07:44:33マナーとして、debug ビルド版じゃなくて、release ビルド版の方を
配布した方がいいかもしれんが。
0191デフォルトの名無しさん
2009/11/26(木) 09:37:070192デフォルトの名無しさん
2009/11/26(木) 09:51:45Debug版は配布すべきでない。
単にDebug.WriteLineなどのログ情報が必要なだけなら、
ReleaseビルドでDEBUG定数の定義を追加すればよい。
0193デフォルトの名無しさん
2009/11/26(木) 10:21:12外部ツール使ってなければ
気にするのはFrameworkのバージョン位だな
3.xが入ってれば
明示的に2.0入れなくても動くんだっけ?
0194デフォルトの名無しさん
2009/11/26(木) 14:47:31Debugビルドの方が、Releaseビルドより容量が大きくなることがあるんじゃなかったっけ?
Debug用の情報が含まれるとかなんとかで。
0195デフォルトの名無しさん
2009/11/26(木) 15:02:02でかいのはあくまでpdb。
0196デフォルトの名無しさん
2009/11/26(木) 15:38:26ちょこっとプログラム組んだだけで、
ものすごいサイズのpdbファイルができることがあるんだけど・・・
0197デフォルトの名無しさん
2009/11/26(木) 17:45:100198デフォルトの名無しさん
2009/11/26(木) 18:10:26???
0199デフォルトの名無しさん
2009/11/26(木) 18:32:07ググれないとか、もうね。
0200デフォルトの名無しさん
2009/11/26(木) 21:03:01すいません >>198は誤爆なので質問者じゃありません
0201デフォルトの名無しさん
2009/11/26(木) 21:27:37ありがとうございます。
ほとんど意味がわかりませんがまた調べてみたいと思います。
0202デフォルトの名無しさん
2009/11/26(木) 22:22:570203デフォルトの名無しさん
2009/11/26(木) 22:43:320204デフォルトの名無しさん
2009/11/26(木) 22:59:350205デフォルトの名無しさん
2009/11/26(木) 23:59:44Function Hoge(hoge As String) As String()
Dim res(1) As String
res(0)="hoge"
res(1)="hoge2"
Return res
End Function
と書かずに
Return {hoge,hoge2}
のように書きたいです。
0206デフォルトの名無しさん
2009/11/27(金) 00:00:570207デフォルトの名無しさん
2009/11/27(金) 00:06:390208デフォルトの名無しさん
2009/11/27(金) 02:10:18http://dobon.net/vb/dotnet/form/img/formborderstyle_single.png
これを実行ファイルのアイコンにも使用したいと思っているのですが
どこに存在するか分かる方いますか?
0209デフォルトの名無しさん
2009/11/27(金) 03:31:48そうでなければ勝手に使うのはライセンス違反になる気がする
0210188
2009/11/27(金) 07:51:56なにやら、別の方が割り込んできている様子でしたので念のために断って
おきますが、私は質問の投稿しかしていませんでしたので、それ以外の質問は
別の方だと思われます。
今のところ、特に凝ったものを使ったりはしていないのと、細かいレベルで
プログラムの修正がある関係から、とりあえずは release ビルド版の配布を
行うようにしておきたいと思います。
ありがとうございました。
0211デフォルトの名無しさん
2009/11/27(金) 08:09:19細かすぎんだよプログラマは
0212デフォルトの名無しさん
2009/11/28(土) 09:40:45私はやっと、VB.NET Express Edition をある程度使いこなせるように
なった者です。
このエディションだと印刷機能が低く、Line関数で座標を数値で
指定しながら程度しか帳票を作ることが出来ないようですが、
コストもある程度考えながら、保守性や生産効率性を考えた上で
帳票を作りたい場合は、どのような方法を取るケースが多いのでしょうか?
上位エディションや、Grapeなどのサードパーティー、Accessを使う方法など
いろいろあるようですが、それらをそろえるには資金的な壁がありましたので、
ちょっとここで聞いてみたいと思いました。
0213デフォルトの名無しさん
2009/11/28(土) 13:05:15WordやExcelをCOM使って帳票の代わりにするとか検討してみれば
小規模であれば差込印刷とかで、アプリ側はCSVだけ作成して
帳票の印字調整はあらかじめWordに設定しておくとかすれば工数も掛からんだろ
後は時間と知識があるなら帳票コントロールの自作とかかね
0214デフォルトの名無しさん
2009/11/28(土) 13:17:120216デフォルトの名無しさん
2009/11/28(土) 19:26:23送るという方法しかありませんか?
0217デフォルトの名無しさん
2009/11/28(土) 19:31:400218デフォルトの名無しさん
2009/11/28(土) 19:33:28最初から表示しなけりゃいいのに。
時限で自動的に閉じる、みたいなことがしたいのかもしれないが、
それならそういうメッセージボックスクラスを自分で作ればいい。
少なくとも俺はそうした。
別にたいした手間じゃない。
0219デフォルトの名無しさん
2009/11/28(土) 22:17:07MessageBoxTimeOut
で検索したらサンプルが出てきたので今回はそれを使ってみます。
0220デフォルトの名無しさん
2009/11/30(月) 11:38:00Dim moji As Char
Dim sr As New System.IO.StreamReader(Opendonfile.FileName, System.Text.Encoding.Default) '読込みモードでオープン
Do Until sr.Peek = -1 '最終行が終わるまで繰り返す
gyo = sr.ReadLine 'gyoに行を読み込ませる
mojisu = gyo.Length '行の文字数をmojisuに代入
For count = 0 To mojisu Step 1
moji = gyo.Chars(count)
MsgBox(moji)
Next
Loop
1行目までは行くんですが2行目に行くときに
moji = gyo.char...の文で「IndexOutOfRangeExceptionはハンドルされませんでした」と出るのですがどうすればよいのでしょうか?
0221デフォルトの名無しさん
2009/11/30(月) 11:44:48ForはToで指定された値まで繰り返す
例えばLength=3だったとして、For 0 To 3 は何回繰り返す?
0222デフォルトの名無しさん
2009/11/30(月) 11:51:51ありがとうございました。
0223デフォルトの名無しさん
2009/11/30(月) 18:27:02クラス(DataBox)をコーディングにおいて、そのクラスの設定状況によって
別の値を取得できるかどうか、変更可能かどうか、などの動作を行うように
したいと思っています。
このような動きにする場合は、プロパティでは不可能で、メソッドにて
行うということでよろしいのでしょか?
イメージ的にはこんな感じです。
IF mSettei = 1 Then
return mColor;
Else
return False;
' もしくは例外を返すとか
End IF
0224デフォルトの名無しさん
2009/11/30(月) 18:30:44質問したいのは、プロパティとメソッドの使い分けの考え方の部分です。
0225デフォルトの名無しさん
2009/11/30(月) 18:56:220226デフォルトの名無しさん
2009/11/30(月) 19:19:11ある状況であると、値をちゃんとかえす。
べつな状況であると、値を返さない。
という動きにしようと思っているのです。
箱が閉じて鍵がかかってデータが取れない状態と、
空いていて、データが取れる状態の二つの動作を
持たせようと思っているのです。
もしかすると、このような設計をすること自体が
間違いなのかもしれません。
箱が空いていてデータが取れるかどうかの区別は
DataBoxを使用する側の方が制御するべきなのかな?
0227デフォルトの名無しさん
2009/11/30(月) 20:10:582. 値そのもの
の2つを同時に戻したいなら、
A. 「Function Get〜(ByRef 戻り値) as Boolean」として
戻り値へ値をセットしたかどうかを返す。
B. 「Property 〜() as Nullable(Of 型)」として、返せないときは
Nothing を戻す。
C. 戻り値の型が参照型なら Nothing を、値型なら
(もしあれば) その型の Empty 値を戻す。
D. (プロパティだろうとメソッドだろうと構わないが) 別々に戻す。
0228デフォルトの名無しさん
2009/11/30(月) 21:09:56それはダメ
Getで失敗させるのはMSのガイドラインに違反する
0229デフォルトの名無しさん
2009/11/30(月) 22:25:37その後すぐにその変数を書き換えた場合おかしな動作になりますか?
0230デフォルトの名無しさん
2009/11/30(月) 22:27:240231デフォルトの名無しさん
2009/11/30(月) 22:52:590232デフォルトの名無しさん
2009/11/30(月) 23:34:07値を返さない仕様では無く、nullpoを返すとか0や有り得ない数値(時間の分なら59以上とかマイナスの値)を返す様にするんじゃないかな。
0233デフォルトの名無しさん
2009/12/01(火) 01:24:22で、ListViewのSubItem(3)をStrに入れるにはどのように書けば良いでしょうか?
0234デフォルトの名無しさん
2009/12/01(火) 01:52:11とかいう謎の言葉は良くない
ListViewの各アイテムの4列目を列挙したいってこと?
ならListView.ItemsをFor EachつかってListViewItem列挙して
それのSubItems(3).Textを取得する
0235226
2009/12/01(火) 11:21:31>>227
「値を返せるかどうか」と「値そのもの」を、同時に一つのもの
として処理をするように考えるのではなく、別のものとして
処理するように考えれば良いのですね。
>>228
Getで失敗させてはいけないという設計は知りませんでしたが、
納得はいきました。Getを使用する際は、いちいち Try 〜 Catch 〜 は
使用しませんしね。
>>232
「値が返せない」状況の場合は、例外よりも、0などを返す
方向で設計するとよさそうですね。
そのクラスを使うプログラムの方は、例外を取得するのではなく、
ちゃんとした値だったら・・・0だったら・・・という
プログラムになるのですね。
0236デフォルトの名無しさん
2009/12/01(火) 15:06:10エラーコード返すんだったら例外と変わらん
プロパティはあくまでフィールドのように振舞うべき
素直にGetHogeみたいなメソッドにしたほうがいい
0237デフォルトの名無しさん
2009/12/01(火) 15:18:54レスありがとうございます。
クラス設計を行う場合、カプセル化の実現の為、必ずSetter/Getterを設定し、
外部のプログラムは、フィールドを直接操作しないような方向で考えるべきと
されていますが、VB.NETでは、そのあたりの必要機能すべてをプロパティにて
網羅している、と解釈してしまっていたところで、間違った解釈につながって
しまったようです。
純粋にフィールドの値を代入したり取得したりする場合のみ、プロパティを
使用する。そして、(オブジェクトの状態により振る舞いが変わるなど)
条件付きでデータを取得したり設定したりする場合は、メソッドを作る。
という考えでいるべきなのだなと思いました。
0238デフォルトの名無しさん
2009/12/01(火) 18:15:50中身は自由に実装していいんだぞ。でないとプロパティの意味がない。
返す値が無いからNothingなのはかまわないが、そのNothingは取得操作が失敗したから
Nothingをエラーコードとして返しているのではなく、そのプロパティの値自体がNothingという意味でなければいけない。
0239デフォルトの名無しさん
2009/12/01(火) 20:41:49好きに作ってみればいいじゃん。で、ダメだったらやり直せばいいんだし。
0240デフォルトの名無しさん
2009/12/01(火) 21:33:420241デフォルトの名無しさん
2009/12/01(火) 21:38:46除余を引いてください。
っていうか、小学生でも思いつく知恵だと思うけど・・・
0242デフォルトの名無しさん
2009/12/01(火) 21:38:550243デフォルトの名無しさん
2009/12/01(火) 21:42:10105/10→10 これにまた10をかける
0244デフォルトの名無しさん
2009/12/01(火) 23:34:39Dim val1, val2 As Integer
val1 = 99999 / 100
val2 = val1 * 100
Console.WriteLine(val2)
( ゚Д゚)
Math.Floor()
( ゚Д゚ )
0245デフォルトの名無しさん
2009/12/01(火) 23:43:530246デフォルトの名無しさん
2009/12/01(火) 23:44:54っていうか、だから除余を使おうよ。
0247デフォルトの名無しさん
2009/12/02(水) 00:42:240248デフォルトの名無しさん
2009/12/02(水) 15:03:59Button1をクリックしたら、Do While〜Loopを使ってi=1から10まで加算して
初回ループ
・Console.WriteLineで標準出力ストリームに「i = 1」
・Form1のLabel1にも「i = 1」
n回目ループ
・Console.WriteLineで標準出力ストリームに「i = n」
・Form1のLabel1にも「i =n」
と表示させる。ということをイメージして書いたのが
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer = 1
Do While i <= 10
Console.WriteLine("i = {0}", i)
Label1.Text = "i = " & i
i += 1
Loop
End Sub
Button1をクリックした実行結果は
・標準出力ストリームは1度も表示されない。
・Form1のLabel1には1回だけ「i = 10」と表示される。
・ループが回っていることはステップインで確認。
何が問題なのかアドバイスお願いします。
0249デフォルトの名無しさん
2009/12/02(水) 15:19:13デバッガの出力に表示させたいならDebug.WriteLineとか使う
そのループも画面更新も同じスレッドで行われるので、ループが回ってる間画面更新できない
定期的な処理ならタイマを使う
重い処理ならBackgroundWorker辺りを使う
Refreshで強制的に再描画させられるけど普通ではないしそんなループ程度じゃ視認できないだろ
0250デフォルトの名無しさん
2009/12/02(水) 16:35:33回答有り難うございます。
>フォームアプリケーションだとそもそも標準出力先が用意されてない
>デバッガの出力に表示させたいならDebug.WriteLineとか使う
フォームだと窓表示ができないのですね。なるほど!
>そのループも画面更新も同じスレッドで行われるので、ループが回ってる間画面更新できない
>定期的な処理ならタイマを使う
実行結果を見ると確かにPrivate Sub Button1_Clickを抜けて初めてLabel表示が更新されるので
そうかなあと思ってましたが納得です。
0251デフォルトの名無しさん
2009/12/02(水) 16:53:40異なるタイミングで行われるということなので、
Update()などで更新してやれば実現できる。
Label1.Text = "i = " & i
Label1.Update()
これでも処理中に画面が張り付いてしまうのは変わらないから、
本格的なアプリならTimerやBackgroundworkerをすすめる。
0252デフォルトの名無しさん
2009/12/02(水) 17:21:05以前C++で、構造体配列を宣言するために、
typedef struct tagA
{
CString strName;
int iCount;
} tagA;
CArray< tagA, tagA > tagArray;
というように宣言し、構造体要素をAddしたりDeleteしたりしていました。
tagArray.Add(...) のように。
VB.NETではどのように宣言してやればいいのでしょうか?
0253デフォルトの名無しさん
2009/12/02(水) 17:32:230254デフォルトの名無しさん
2009/12/02(水) 17:53:03ほんとありがとー。
Cだけしかやったことないっていうのはほんとダメだねぇ・・・
たすかりました。
0255デフォルトの名無しさん
2009/12/02(水) 19:35:30自分で書こうとしてはいけない
0256デフォルトの名無しさん
2009/12/02(水) 19:38:2211個の連続した整数を取り出したいのに
60-50=10なのに
でも50から60には11個の整数がある。
この矛盾はなに?
0257デフォルトの名無しさん
2009/12/02(水) 19:43:130258デフォルトの名無しさん
2009/12/02(水) 19:50:32CArray 使うとか…いや、まあいい。
>>255
でもツリーとかグラフはないんだよねえ。
>>256
しょうがっこうの べんきょうは むずかしいですか?
すうじを 5 と 3 にしてみるとわかりますよ。
0259デフォルトの名無しさん
2009/12/02(水) 19:51:571-1=0なのに
1から1までは1という1個の整数がある!ふしぎ!
0260デフォルトの名無しさん
2009/12/02(水) 20:10:080261デフォルトの名無しさん
2009/12/03(木) 07:36:33レスありがとうございます。
とりあえず手を動かしていろいろやってみたいと思います。
0262デフォルトの名無しさん
2009/12/03(木) 08:12:54メンテナンス目的時のみに使用するメソッドを設定する場合の
命名規則やルールはあるのでしょうか?
コーディング規約ではそういうものは見たことがないので、
質問してみました。
_(アンダーバー)で始まる名前にするなど、適当な考えで
やっておくといいのかな?
細かい事を気にしすぎだという意見が出るかもしれませんが、
多くの人が必ず関係するような事だと思ったので確認しておきたいと
思いました。
0263デフォルトの名無しさん
2009/12/03(木) 08:21:45もし、あったらごめんね
0264デフォルトの名無しさん
2009/12/03(木) 09:28:19C言語が一番最初コマンドプロンプトでprintfだのから始まったように初歩の初歩から学べないの?
0265デフォルトの名無しさん
2009/12/03(木) 09:35:51プロジェクト作成時に、コンソールアプリケーションを選べばいいと思います。
場合によっては、VB.NETから離れて、BASICを学ぶという選択肢で考えた方が
いいかもしれません。
0266デフォルトの名無しさん
2009/12/03(木) 09:45:00テキストボックスを配置して、コマンドボタンクリック時のイベントに
コードを書いていくというのが、初歩という考え方でもあると思う。
(GUIを作るまでの過程がマウスによる操作で出来るので簡単っていう
意味合いで、Visualです。)
0267デフォルトの名無しさん
2009/12/03(木) 10:07:59' save hello.vb
module Program
sub main
Console.WriteLine("Hello World !")
end sub
end module
vbc hello.vb
hello
0268デフォルトの名無しさん
2009/12/03(木) 10:39:072時間悩んでもわからなかったのに寝て起きたらあっさり見つかったり
0269デフォルトの名無しさん
2009/12/03(木) 11:57:530270デフォルトの名無しさん
2009/12/03(木) 12:05:120271デフォルトの名無しさん
2009/12/03(木) 14:40:33数字の桁数が定まってないのは\dでは探せないしなぁ
0272デフォルトの名無しさん
2009/12/03(木) 14:44:140273デフォルトの名無しさん
2009/12/03(木) 15:20:310274デフォルトの名無しさん
2009/12/03(木) 15:56:25+とか*の量子指定じゃ駄目なの?
せっかくの質スレなんだから聞いてみろよw
0275デフォルトの名無しさん
2009/12/03(木) 17:08:18http://homepage1.nifty.com/rucio/main/kiso/Scope.htm
このサイトを読んでいたのですが、「2.適用範囲」の Friend を
使う場合はどんなケースであるのがいまいちわかりませんでした。
同じプロジェクトであればということですが、基本的にモジュールは
自分が今作成しているプロジェクトに組み込んで使うものではないの
でしょうか。
例えば、AさんがJisakuクラスを作成し、Jisaku.vbファイルに保存。
それをBさんが、新規プロジェクトを作成し、Jisaku.vbファイルをその
プロジェクトフォルダの中にコピーしてForm.vbを記述。
Cさんが自分のPCにて、それとは別に新規プロジェクトを作成し、
Jisaku.vbファイルをそのプロジェクトフォルダの中にコピーして
Form.vbを記述。
という感じにやるのだと思っていたのですが、この考え方が間違いなのでしょうか。
0276デフォルトの名無しさん
2009/12/03(木) 17:40:01プロジェクト内でも間違いではないが、同一アセンブリ内というのが正確だな。
アセンブリが異なれば例え同じ名前のクラスでも別のクラスという扱いになる。
.NETでは基本的にソースレベルでコピーや共有はしない。
0277デフォルトの名無しさん
2009/12/03(木) 19:01:37レスありがとうございます。
使う人が使い方を間違えないような感じの名前をつけておきたいと思います。
0278デフォルトの名無しさん
2009/12/03(木) 19:18:40データベースの接続及びSQL文発行を行う
DLLを作成しており、
接続には『SqlDataReader』を使用しています。
Transactionを指定しない場合に
排他制御がどのように行われているのか、がわかりません。
一切排他が行われないのでしょうか?
また、排他制御を実装する場合はどのようにすれば良いのでしょうか?
行いたい制御としては、
�@データ取得中(SELECT)にデータ更新を抑止する
�Aデータ更新中(INSERT/UPDATE/DELETE)にはデータの取得/更新を抑止する
です。
0279デフォルトの名無しさん
2009/12/03(木) 19:42:340281デフォルトの名無しさん
2009/12/03(木) 19:49:240282デフォルトの名無しさん
2009/12/03(木) 19:52:59(SqlDataConnection だろ、ってのは置いといて)
MS SQL Server の Isolation Level の設定次第。
0283デフォルトの名無しさん
2009/12/03(木) 20:04:110284デフォルトの名無しさん
2009/12/03(木) 20:04:14とりあえず元スレに移動したことを書いとけよ。
マルチとかいわれんぞ。
0285デフォルトの名無しさん
2009/12/03(木) 21:19:35俺はPCがカスだから動作が重いけど楽で便利だからVBの統合開発環境をそのまま使ってるんだけど
0286デフォルトの名無しさん
2009/12/03(木) 21:21:430287デフォルトの名無しさん
2009/12/03(木) 21:24:040288デフォルトの名無しさん
2009/12/03(木) 21:26:290289デフォルトの名無しさん
2009/12/03(木) 21:35:22もともとインテリセンス前提で作られてるんであってPythonみたいな書きやすさ重視の言語とはわけが違う
0290デフォルトの名無しさん
2009/12/04(金) 07:50:49レスありがとうございます。
分かりやすい説明でした。
0291デフォルトの名無しさん
2009/12/04(金) 09:34:54ランダムに数字を取得する方法は、googleで検索するとすぐに
出てきたりしますが、(例えば以下のサイトなど)
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=21547&forum=7
ある数字の幅を指定して、その範囲で数字を1回ずつ重複せずに取得する
ことはできないのでしょうか?
(同じ数字であるかのチェックを行うプログラムを書いて工夫をする
しかないのでしょうか)
(例)0〜5の数字をランダムに取得する
1回目:2
2回目:1
3回目:4
4回目:0
5回目:3
6回目:5
このような感じに数字が取得でき、6回目の数字の取得まで、
一度出た数字が重複することが無い。
0292デフォルトの名無しさん
2009/12/04(金) 09:45:05「シャッフル」というキーワードで調べてみるとよかったようですね。
自己解決しました。
0293デフォルトの名無しさん
2009/12/04(金) 09:49:11解ります。(゚ー゚ )(。_。)(゚ー゚ )(。_。)ウンウン
私も考えたのですが、どっかにメモしておくしか考えつかないです。
数学板かアルゴリズムのスレで聞いてみようかと思ってました。
0294デフォルトの名無しさん
2009/12/04(金) 14:17:31VB.NETの変数には、値型と参照型がありますが、変数にこういう二つの
概念を持たせて、プログラミングの際に使い分けをさせたりするメリット
とはどういうものがあるのでしょうか?
http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard34.htm
実際にプログラミングをする際に感じるものがいまいち見えませんでしたので
質問をしてみました。こういうプログラミングをしてみるとわかるよという
ものの紹介でも結構です。よろしくお願い致します。
0295デフォルトの名無しさん
2009/12/04(金) 14:22:59後でそれを使ってオブジェクトを設定したい場合、
たとえば
Dim TypeA as Type = GetType(Integer)
・・・
Dim ObjectA as TypeA = CType(obj, TypeA) ・・・・・(*)
このようにすると(*)でエラーします。こういう使い方はNGのようで、
どういう仕方で行なうものか教えてください。
0296295
2009/12/04(金) 14:25:050297デフォルトの名無しさん
2009/12/04(金) 14:32:16値型の理由は主にパフォーマンス ただし分かって使わないと却って悪化する
自分で定義する分には値型を作ることは(列挙体以外)まずないよ
>>295
Dim ObjectAのところでTypeAはプログラム上確定してないんだろ? 実行時に初めて確定する
ならTypeAにキャストしてどうするの? 何もできないじゃん?
0298295
2009/12/04(金) 14:43:11>Dim ObjectAのところでTypeAはプログラム上確定してないんだろ?
そうなんですが、たとえば、親のオブジェクトからプロパティで型を受け取って
それを使ってキャストしたいと思いました。それで元々定義されたメソッドを
子の方で叩くなどしたいと。こういうのは無理なものですか?
0299デフォルトの名無しさん
2009/12/04(金) 14:55:25どうキャストすんのよ?
VBならレイトバインドでも使っとけ。
おすすめしないけど。
何がしたいか具体的に書けばもっと真っ当な方法がある可能性が高い。
0300295
2009/12/04(金) 15:23:55コーディング時には実はわかっているのですが、クラス型は親の方で宣言して
おきたく、子の方はいろんな種類があって実行時に型を受け取りたいということ
でした。
ただ、どうも(*)という方法自体が不可能なような感じですかね?Type型のもので
オブジェクトを宣言したりキャストすること自体が間違いなのかなあ・・・
0301デフォルトの名無しさん
2009/12/04(金) 16:12:35コーディング時にってのは子のコーディング部分で分かってるかって意味だ。
0302デフォルトの名無しさん
2009/12/04(金) 16:19:09その座標にグラフィックが描画されるようにしたいのですが、
そのようなイベント(?)はあるのでしょうか?
どのようにすればいいのでしょうか?
現在はピクチャーボックスとマウスエンターイベントで実現しているのですが、
たくさんのピクチャーボックスを使うとものすごく重くなってしまうそうで
ダメと言われてしまいました。
0303デフォルトの名無しさん
2009/12/04(金) 16:20:26なんでたくさん使うの
0304デフォルトの名無しさん
2009/12/04(金) 16:28:330305デフォルトの名無しさん
2009/12/04(金) 16:30:37レスありがとうございます
現在はフォームにフォームのクライアント領域と同じ大きさのピクチャーボックスをすでに貼り付けていて
その上に一個ずつ麻雀牌のピクチャーボックスを貼り付けている形になっています。
麻雀パイにマウスエンターすると牌が浮き上がって見えるようにしたいのですが、
これもひとつのピクチャーボックスで実現できますか?
0306デフォルトの名無しさん
2009/12/04(金) 16:32:37こんな感じで領域を指定するんじゃないの?
If MousePosition.X > 250 And MousePosition.Y > 250 Then
Me.PictureBox1.BackColor = Color.Aqua
Else
Me.PictureBox1.BackColor = Color.Blue
End If
0307デフォルトの名無しさん
2009/12/04(金) 16:37:100308デフォルトの名無しさん
2009/12/04(金) 16:44:26CType や DirectCast は「型名」を指定するものであって、
Type型で指定するわけじゃない。
>キャストすること自体が
動的な型変換は面倒だぞ。
つ[TypeDescriptor.GetConverter]
0309デフォルトの名無しさん
2009/12/04(金) 16:48:26MouseEnter と MouseLeave のときだけ捕まえて描画したらええやん。
0310デフォルトの名無しさん
2009/12/04(金) 16:49:29たぶん型変換したいわけではなくてどっちかというとレイトバインディングの方だと思う
0311295
2009/12/04(金) 16:55:31>CType や DirectCast は「型名」を指定するものであって、
>Type型で指定するわけじゃない。
やっぱりそうだったのですか。わかりました。ありがとうございます。
>動的な型変換
>TypeDescriptor.GetConverter
こういうものがあったのですね。勉強します、またよろしくです。
0312295
2009/12/04(金) 17:00:55>>310
>レイトバインディング
子のコーディング時にも親を見ているのでわかっているのですが、
子の方ではそのクラスを宣言できないので、クラスの宣言自体をオブジェクト
にして受け取りたいということなのでした。しかしそういうことは簡単では
なさそうな感じので、とりあえず別の方法も考えてみます。
0313デフォルトの名無しさん
2009/12/04(金) 17:01:39Flashでデザインされたメニューのようなものか?
マウスを動かすとリアルタイムでボタンの色や形が若干変わるという。
0314デフォルトの名無しさん
2009/12/04(金) 17:30:16されていることを知るにはどうすればよいでしょう?それらを全て
列挙することはできるでしょうか。
0315デフォルトの名無しさん
2009/12/04(金) 17:35:57そもそもそんなのが必要になるのってどんなときよ
0316デフォルトの名無しさん
2009/12/04(金) 17:44:26ListBox は、1行につき1件のデータしか表示出来ないのでしょうか?
Access の場合は、ListBox に対してテーブルそのものを貼り付けることが
出来、さらに1件目のデータを非表示にしておいて、クリックした時に
そのデータを取得するということもできたりしたのですが、
そういったことができなさそうなので確認のため、書き込みました。
0317デフォルトの名無しさん
2009/12/04(金) 17:47:51Panel の中に複数の RadioButton を貼り付けた場合、
現在、どの RadioButton が選択されているかをチェックするには、
Panel のプロパティからでは確認は出来ない?
貼り付けているすべての RadioButtion において
If Me.RadioButton1.Checked = True Then
みたいなコードを書いてチェックするしかない?
0318デフォルトの名無しさん
2009/12/04(金) 17:51:00標準のListBoxはそう
まあListBoxだってDataTableをDataSourceにして
DisplayMemberとValueMemberを指定するぐらいならできる
それで不満ならネットでMultiColumnListBoxでも探せば
0319デフォルトの名無しさん
2009/12/04(金) 17:53:40うん
まあ関数化しとけば便利だね
>>316
ListViewとかDataGridViewとか使うのは?
0320デフォルトの名無しさん
2009/12/04(金) 17:54:11すばやい回答ありがとうございました。
とりあえずは DisplayMember と ValueMember を使う方法でやってみます。
それでうまくできない場合は、紹介していただいたコントロールや
Grid を使うなど別な方法を検討してみます。
0321デフォルトの名無しさん
2009/12/04(金) 17:57:26回答ありがとうございます。
紹介していただいた ListView とか DataGridView の機能について
詳しく調べてみます。
初心者にも親切にありがとうございました。
0322デフォルトの名無しさん
2009/12/04(金) 17:58:580323デフォルトの名無しさん
2009/12/04(金) 18:07:24arraylist を工夫して使えば、 listbox でクリックした名前に相当する
数値データを取得することが出来るっていう意味かな?
ちょっと私の頭がついていけてなくてどういうコードを書いていけば
いいのかのイメージはついていませんが、いろいろとやってみます。
ありがとうございました。
0325デフォルトの名無しさん
2009/12/04(金) 19:24:38DataGridViewじゃなくてDataGridな。
0326デフォルトの名無しさん
2009/12/05(土) 07:48:04Botan1.BackColor = Color.FromArgb(255, 95, 158, 160)
の255のところは0でも255でも色に変化ないようなんだけどどんな意味が?
0327デフォルトの名無しさん
2009/12/05(土) 07:50:250328デフォルトの名無しさん
2009/12/05(土) 08:35:100329デフォルトの名無しさん
2009/12/05(土) 08:46:18ボタンは透明にはならんだろ
0330デフォルトの名無しさん
2009/12/05(土) 10:19:010331デフォルトの名無しさん
2009/12/05(土) 10:58:12ありがとうございます!!
>If MousePosition.X > 250 And MousePosition.Y > 250 Then
↑のようにマウスの位置を検出できるとは知りませんでした
試してみたいと思います
>>313
はい、そういうイメージです
0332デフォルトの名無しさん
2009/12/05(土) 11:28:04パイの部分にマウスを持っていったらっていう処理にしようとするから
重たくなったりして、どうしたらいいのやら・・・ってなるんじゃないの?
パイが描画されている座標部分をクリックしたら、浮いて表示される
じゃだめなの?
0333デフォルトの名無しさん
2009/12/05(土) 13:09:28「それだとなんかイメージと違う」って言われちゃいましたTT
0334デフォルトの名無しさん
2009/12/05(土) 13:14:41だったら、pictureboxをパイの数だけ貼り付けるしかないんじゃないかなぁ。
enterやleaveのイベントをひろって背景を入れ替えていくとか。
場合によっては、VB.NETを使うこと自体をあきらめるのを選択肢に入れた
ほうがいいかもね。
.NET になってから、java並みに重くなってしまってるから。
0335デフォルトの名無しさん
2009/12/05(土) 13:17:44インターフェースはhtmlのスタイルシートでやって、
処理部分をjavascriptでって方法はどうかな?w
この方法だとファイル保存は出来ないけどね。
0336デフォルトの名無しさん
2009/12/05(土) 15:29:31その程度のことなら.NETのWindows Formでも普通にできると俺は思うよ。
というか、まず確実にできる。
要はマウスポインタの座標からOnMouseしている牌の特定と、あとは牌の描画が
出来ればいいだけのことでしょ。
だから、例えば牌を表し牌の描画も担当するTileクラスと、牌を描くキャンバスになるコントロールと
Tileのリストをフィールドに持って、OnMouseしている牌の特定などを行う
TimeManegerクラスを用意すればいい。
たいして難しい問題とも、パフォーマンス的に無理な処理とも思えない。
>>334
まだこういう恥ずかしい勘違いをしている人がいるのかw
0337334
2009/12/05(土) 16:31:28私は恥ずかしい人でしたが、Timerコントロールとマウスの座標位置を取得する
処理の組み合わせで、原型となるものを作り上げることが出来ました。
今までマウスのイベントのみで処理をしようと考えていたので、コントロールが
大量に必要だという結論に至ってしまっていました。
ありがとうございました。
0338デフォルトの名無しさん
2009/12/05(土) 17:05:160339デフォルトの名無しさん
2009/12/05(土) 17:22:59XP32bitの時は問題なく動いてて、今Windows7 64に変えたんで試してみたら
SendInputがまったく機能してないんだけどこれはどうすれば
0340デフォルトの名無しさん
2009/12/05(土) 17:50:33次にUAC
0341339
2009/12/05(土) 18:30:230342デフォルトの名無しさん
2009/12/05(土) 18:34:100343デフォルトの名無しさん
2009/12/05(土) 20:50:57でひっかかったかな?
0344デフォルトの名無しさん
2009/12/05(土) 21:43:290345デフォルトの名無しさん
2009/12/05(土) 22:54:59ボタンのBackColorが透明ってことじゃないの?
0346デフォルトの名無しさん
2009/12/06(日) 10:07:23だと
リッチテキストボックス内のテキストの改行が全部なくなっちゃうんだけどどうすれば
0347デフォルトの名無しさん
2009/12/06(日) 10:31:48#Regionで定義したものがコードウインドウのメソッド選択ボックスで
選択できたら便利だなと思ったんですが、VS2008以降ではそういった
拡張が行なわれていたりしてますか?
0348デフォルトの名無しさん
2009/12/06(日) 11:04:40#Regionってプリプロセッサだからコードの中身とは何の関係もないのでそんな機能あるわけがない
0349デフォルトの名無しさん
2009/12/06(日) 11:17:00コードウインドウの上部にある、「クラス」の選択ボックスの右側にある
「メソッド」選択ボックスです。
>#Regionってプリプロセッサだからコードの中身とは何の関係もない
そうだったのですか。あればすばやく該当の場所を出せるので便利かな
と思ったのでした。
0350デフォルトの名無しさん
2009/12/06(日) 11:29:10まあ使いすぎてなきゃいいんだけど。
リージョンを大量にしかも入れ子に何重も書いてたソースは泣きたくなった。
0351デフォルトの名無しさん
2009/12/06(日) 11:31:540352デフォルトの名無しさん
2009/12/06(日) 12:59:45さすがにそれはないし、もっと悪い。
>>350
まさかマウス操作で展開してる、なんてオチじゃないよね?
0353デフォルトの名無しさん
2009/12/06(日) 13:27:100354デフォルトの名無しさん
2009/12/06(日) 13:28:21モードもあったらわかりやすいということはないですか?
0355デフォルトの名無しさん
2009/12/06(日) 13:53:29そういう機能があるとつい長いメソッドを書いてしまいがちになって良くないし
0356デフォルトの名無しさん
2009/12/06(日) 14:48:20普通の全部展開・折りたたみだと、VBの場合うまく行かない。
0357デフォルトの名無しさん
2009/12/06(日) 18:47:310358デフォルトの名無しさん
2009/12/06(日) 19:29:55End If
ここらへんでプログラムがうまくうごかないけどどうすれば
0359デフォルトの名無しさん
2009/12/06(日) 19:35:35end if
じゃなくて?
0360デフォルトの名無しさん
2009/12/06(日) 19:57:14If 1 <= iR And iR <= 100 Then
End If
0361デフォルトの名無しさん
2009/12/06(日) 19:57:580362デフォルトの名無しさん
2009/12/06(日) 23:04:46基本的にAndAlso使う癖つけといた方がいいぜ。
0363デフォルトの名無しさん
2009/12/07(月) 03:41:52それはどうしてですか?
「他の言語にも近いような書き方と」いう観点では、AndAlsoは使わないほうが
良いと思っていて、私は使っていないのですが。
これは、あおりとかじゃなくて、私はあまり経験が深いほうではないので、
そのメリットなどの確認がしたいという意味合いです。
0364デフォルトの名無しさん
2009/12/07(月) 08:27:160365デフォルトの名無しさん
2009/12/07(月) 08:32:40それに何の意味が?
0366デフォルトの名無しさん
2009/12/07(月) 09:19:43もしForm2の名前が
とってもながいなまえのフォーム
だったら
とってもながいなまえのフォーム.textbox1.text="abc"
とかになっちゃうけどどーすれば
ちなみに
Dim frm2 as とってもながいなまえのフォーム
frm2.textbox1.text="abc"
としてもabcは入力されない
0367デフォルトの名無しさん
2009/12/07(月) 10:10:34・上の質問
withを使う
短い名前のForm2型に入れなおす
・下の質問
frm2.textbox1.text="abc"
でもコード上は問題なく文字が設定されるはず
frm2とfrm2.textbox1に実体はあるのか?
Nothingになってないかステップ実行して確認しる
0368デフォルトの名無しさん
2009/12/07(月) 10:13:59理由は判らないけど、
Dim frm2 As とってもながいなまえのフォーム
frm2 = とってもながいなまえのフォーム
frm2.TextBox1.Text = "abc"
frm2.Show()
で行けた。
詳しい解説は、誰か頼む。
0369デフォルトの名無しさん
2009/12/07(月) 10:20:27プログラムが実際にどう動いているのかトレースする為に
下記の様なプロシージャを作り
Sub TraceLog(ByVal strName As String)
Debug.WriteLine(Now.ToString("HH:mm:ss @ " & strName))
End Sub
で、各プロシージャの頭に
TraceLog("TextBox3_GotFocus")
とか
TraceLog("fmClear")
こんな感じでプロシージャ名を追加してみたんですが...
イミディエイトウィンドウ中で下記の様に文字化けするです。
10:18:11 @ Ti18er1_Tick
10:18:11 @ or181_+09:00e97own
10:18:11 @ 11a午uei
10:18:12 @ Ge午Da午eTex午
10:18:14 @ PreV_o00
10:18:14 @ Tex午Box3_Go午ocu14
なーんとなく意味は判る様な文字化けなんですが
これってどうやって直したら良いんでしょうか?
0370366
2009/12/07(月) 10:29:06Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frm2 As New とってもながいなまえのフォーム
frm2.TextBox1.Text = "abc"
'frm2 = とってもながいなまえのフォーム
frm2.Show()
MsgBox(frm2.TextBox1.Text)
End Sub
0371デフォルトの名無しさん
2009/12/07(月) 10:33:53処理時間を短縮する為ということなのですね。
ありがとうございました。
>>365
「覚えてしまえば良い」とかいいきってしまったら
反論は出来ませんが、ある言語特有のコードの
書き方のスタイルだけが身についてしまうと、
他の言語を使わなければならない状況になった時、
苦労しそうだなという意見です。
なので、よっぽど処理速度が遅くて・・・という
状況でない限りは、コーディングスタイルの方を
優先した方がよいのでは、と思っているのです。
DB接続時の設定なども、ウィザードを使っての
方法しか知らない場合は他の言語での応用性が
全くありませんし。
0372デフォルトの名無しさん
2009/12/07(月) 10:40:44Debug.WriteLine(Now.ToString("HH:mm:ss @ ") & strName)
じゃないの?
どうしてNowの中に文字列を入れようとしているのかが
良く分かりません。やろうとしている目的や得たい結果
などもあわせて書いてください。
0373デフォルトの名無しさん
2009/12/07(月) 10:41:33例えばTraceLog("TextBox3_GotFocus")だと
Debug.WriteLing(Now.ToString("HH:mm:ss @ TextBox3_GotFocus"))
になるだろ
この末尾のsは先行ゼロ無しの秒数を指してるし
tはAM/PM 指定子の最初の文字を指してる
0374369
2009/12/07(月) 10:52:38ああああああっーー
理解しました...ありが�dです。
なんで"t"が"牛"に化けるんだろって思ってたら"牛"じゃなくて"午"だったのね...
0375デフォルトの名無しさん
2009/12/07(月) 11:21:41なんかずれてるなあ。
パフォーマンスもあるけど、
例えばnullチェックの後でプロパティチェックするとか、
そういう時に必要になるんだよ。
そして他の言語って大抵ショートサーキットが普通じゃないか?
だから他の言語に合わせる意味でもAndAlsoなんだよ。
0376デフォルトの名無しさん
2009/12/07(月) 11:29:19andalsoとかキモイんだよな
いやわかるよ。処理をあわせたほうがいいのは。
つかVBの変態仕様を引き継いだのが悪い
0377デフォルトの名無しさん
2009/12/07(月) 12:01:16AndAlsoとかOrElseとか論理演算子追加されてるのか。
やっぱ、頭からマニュアル読まないとダメっぽいな。
0378デフォルトの名無しさん
2009/12/07(月) 12:28:28&&がショートサーキットなんだから同じだよ。
0379デフォルトの名無しさん
2009/12/07(月) 13:06:59&ってビット演算で、&&が論理積じゃ無くなってるの?
0380デフォルトの名無しさん
2009/12/07(月) 13:13:28(整数) & (整数) はビットごとのAND
(整数) && (整数) は文法エラー
(論理型) & (論理型) はショートサーキットなしのAND
(論理型) && (論理型) はショートサーキットありのAND
VBスレだから触れとくけど
VBの場合は暗黙の型変換があるからちょっと複雑
0381デフォルトの名無しさん
2009/12/07(月) 16:17:440382デフォルトの名無しさん
2009/12/07(月) 18:47:22コーディングはするべきじゃないと思ってる
AndAlsoとか、IF文のネストを1段下げれられるだけだと思うがな
VB.NETってベータで1回ショートサーキットありにしてみて、
結局製品版でなしになったんじゃなかったかな
0383デフォルトの名無しさん
2009/12/07(月) 19:02:12>例えばnullチェックの後でプロパティチェックするとか
のような局面で2行に分けて書け、と今更言われても
かったるくてしょうがない。
>結局製品版でなしになったんじゃなかったかな
は?
0384デフォルトの名無しさん
2009/12/07(月) 19:28:04ネスト減らせるだけって…
ショートサーキット無けりゃElseが必要なときに困るだろ。
0385デフォルトの名無しさん
2009/12/07(月) 19:32:21わざわざ言語で使い分けられるようになってんのに、
どちらも前提にしない意味が分からない。
素人が理解せずに間違いやすいのは分かるが、
じゃあどちらも前提にしないときに
素人が間違ったことをやらなくなるかというと
そうは思えない。
0386デフォルトの名無しさん
2009/12/07(月) 19:39:50結局従来通り通常の演算ではショートサーキットしない仕様に落ち着いた
その代わりに、ショートサーキットする特別な演算子が追加されたんだ
0387デフォルトの名無しさん
2009/12/07(月) 19:47:530388デフォルトの名無しさん
2009/12/07(月) 19:50:50読む人もちゃんと分かって読むから全く問題ないけど
確かにVBオンリーの人には馴染みが薄いだろうから
使わないことにするならそれもアリだと思う
0389デフォルトの名無しさん
2009/12/07(月) 19:55:090390デフォルトの名無しさん
2009/12/07(月) 19:56:460391デフォルトの名無しさん
2009/12/07(月) 20:15:300392デフォルトの名無しさん
2009/12/07(月) 20:44:53んなこと言って阿呆を甘やかすから
いつまでたってもゴミグラマが死滅しないんだ。
0393デフォルトの名無しさん
2009/12/07(月) 21:58:130394デフォルトの名無しさん
2009/12/07(月) 22:04:250395デフォルトの名無しさん
2009/12/07(月) 22:07:170396デフォルトの名無しさん
2009/12/07(月) 22:09:29げっ。
あかんのん?
0397デフォルトの名無しさん
2009/12/07(月) 22:11:22プロパティやメソッドを定義して間接的に触らせるのが正解です
でもVBだからどうでもいい
0398デフォルトの名無しさん
2009/12/07(月) 22:12:01ダメなら他でいい
0399デフォルトの名無しさん
2009/12/08(火) 10:15:12しなければならなくなる状況も想定してであれば、カプセル化などの
観点を身に付けたやり方をしておいた方が良い。
Accessでは、GUIでテーブルやフィールドの指定が出来るクエリという
機能があるのでSQL文の読み書きが出来なくても良いかどうかと同じ話。
0400デフォルトの名無しさん
2009/12/08(火) 11:58:52なんだか俺が開発なんてそんな大そうな事とてもじゃないけど言えない
0401デフォルトの名無しさん
2009/12/08(火) 12:10:060402デフォルトの名無しさん
2009/12/08(火) 13:02:47そりゃC#でもJavaでも>>393のようなことはできる
0403デフォルトの名無しさん
2009/12/08(火) 13:23:48こんな感じの表記を使ったりしていますか?
cnt = cnt + 1
0404デフォルトの名無しさん
2009/12/08(火) 13:30:34VBの場合その表記にしてしまうな。
0405デフォルトの名無しさん
2009/12/08(火) 13:35:55最初、cnt++と書いて通らないのに愕然としたのは秘密だ。
0406403
2009/12/08(火) 13:44:21私の場合は、概ねの言語で使う事が出来る>>403の表記を使うのが
一番だと思うんだけどね。
まちがえて =+ とコード書いてしまうこともあるし。
0407デフォルトの名無しさん
2009/12/08(火) 13:49:290408デフォルトの名無しさん
2009/12/08(火) 13:52:33VB9 の時は、LINQ の追加、言語仕様の方は従来と同じ、みたいな感じだったけれど。
0409デフォルトの名無しさん
2009/12/08(火) 13:59:23これまで足りなかった分の補足といった感じかな。
Action型のラムダ式、ステートメント本体を持つラムダ式が書けるようになったのと
コレクションの初期化構文。
Dim f2 = new List(Of Integer) from { 2, 7, 4, 0, 6 }
自動プロパティ。
public property Bar1 as string = "abc"
0410デフォルトの名無しさん
2009/12/08(火) 16:31:13いちいちpublic int Number
0411デフォルトの名無しさん
2009/12/08(火) 16:32:43何千行もガリガリ書くような言語じゃないかな
0412デフォルトの名無しさん
2009/12/08(火) 17:05:06自動プロパティってなんでしょうか?
0413デフォルトの名無しさん
2009/12/08(火) 17:06:470414デフォルトの名無しさん
2009/12/08(火) 17:12:00サンクス。
>>410のコードの例だと、クラス名.Number = 10 とか出来るという
ことなんだろうけれど、その10が代入されたメンバを使っての
メソッドの定義は不可能ということになるんですよね?
あくまで、Get/Setのみが目的の限定されたメンバの定義という。
0415デフォルトの名無しさん
2009/12/08(火) 17:16:23普通のプロパティも分かってないでしょ君
0416デフォルトの名無しさん
2009/12/08(火) 17:21:21雰囲気的には、少ないメリットの為に、ややこしく、従来とは違う表記も
許可するような機能にしか見えない。
ttp://www.atmarkit.co.jp/fdotnet/csharp30/csharp30_01/csharp30_01_02.html
だからといって学ばなければいいというわけでもないからな。
もっと、いろいろなコードなど、多くの事例を見ていけばつかめる
ようになるのかな?
0417デフォルトの名無しさん
2009/12/08(火) 17:24:54じゃ、俺にプロパティというものを教えてくれ。
あおりとかじゃなくて、フィールドに対するGetter/Setterの役割を
持っているものだと思っていたのだが。
0418デフォルトの名無しさん
2009/12/08(火) 17:33:51とか
VBのスタンスとしてはC#に合わせてるだけだろうけど
0419デフォルトの名無しさん
2009/12/08(火) 17:41:02それは置いといて、VB9ではあまりラムダ式には熱心じゃなかったんだな。
ラムダ式はLinqのクエリ式を実現するための仕掛けと捉えていたので、
クエリ式をリッチにすれば、ラムダ式も拡張メソッドもいらないと考えられていた。
0420デフォルトの名無しさん
2009/12/08(火) 17:46:490421デフォルトの名無しさん
2009/12/08(火) 17:48:37' Action型ラムダ
Dim Lambda1 As Action(Of Integer) = Sub(x) Console.WriteLine(x)
Lambda1(888)
' ステートメントを持つラムダ
Dim Lambda2 As Func(Of String, integer, integer) = Function(s, i)
for r = 1 to i
Console.WriteLine(s)
next
return 0
End Function
Lambda2("aaaa", 4)
0422デフォルトの名無しさん
2009/12/08(火) 17:56:15なんじゃこりゃー
わけわかめ
要らないや
0423デフォルトの名無しさん
2009/12/08(火) 18:05:33なんでも聞くところによると、ラムダ式はM$製ではないある言語によって、
その有用性を世の中に示したらしいが、それのレベルからやらないと
理解は難しいのかなぁ?
初めてDBに触れる人が、 ADO.NET & SQL Server のみでは SQL文 の習得は
難しい。なので、そこから一旦離れて、Accessのクエリを使うなどして、
SQL文や結果をチェックしながら学ぶと理解が出来、使えるようになる。
みたいな話のような気がしている。
0424デフォルトの名無しさん
2009/12/08(火) 18:36:230425デフォルトの名無しさん
2009/12/08(火) 18:47:38>自動プロパティなかったのか。
必要性がわからん。
>>415
俺の ESP 能力が
「get/set しかできなくて、例えば set されたときに OnNumberChanged() を
呼び出すことも叶わない」
という意味だよと囁いている。
0426デフォルトの名無しさん
2009/12/08(火) 19:08:55リフレクションにおいてフィールドとプロパティは別モンだから
「取り敢えずフィールドにしておいてset実装が必要になったらプロパティにする」
のは良くない
「取り敢えず自動プロパティ」にしておけば一貫性が保たれる
0427デフォルトの名無しさん
2009/12/08(火) 19:19:55使うときはほんとに使う、ないとやってられない。
まあみた記事が悪いと思うよ。
もっと当たり前の使い方見ればありがたみが分かる。
0428デフォルトの名無しさん
2009/12/08(火) 19:29:15自動プロパティは
LINQでデータ加工する際に通常は匿名データ型を使う所で、
明示的にクラスを作成したいときに使うらしい
ラムダ式の必要性もこの本に解説あるし、一度読んでみればいいかも
0429デフォルトの名無しさん
2009/12/08(火) 20:18:01Static変数があるんだから、これをプロパティのゲッタからもセッタからも
アクセスできる書き方ができるようにしておいて欲しかったな。
これがあれば鬱陶しいバッキングフィールドを隠蔽できる自動プロパティのよさと
普通のプロパティの柔軟性を両立できるのに。
0430デフォルトの名無しさん
2009/12/08(火) 20:36:16たったこの程度でわからないとか勉強不足だろう。
関数やメソッドもよく知らないんでないか?
0431デフォルトの名無しさん
2009/12/08(火) 20:40:58取得するクラスを作成しているのですが、
『System.Drawing.Image』クラスが使用出来ず、
困っています。
Windowsフォームのみで使用可能なのでしょうか?
クラスライブラリでは同様の情報は取得不可でしょうか?
取得したい情報としては、
・画像の解像度
・PixelFormatの値
・Flagsの値(YCCかどうかの判断に使用)
などです。
0432デフォルトの名無しさん
2009/12/08(火) 20:42:500433デフォルトの名無しさん
2009/12/08(火) 20:48:050435デフォルトの名無しさん
2009/12/09(水) 01:54:44みたいにできないのが難点だなぁ
0436デフォルトの名無しさん
2009/12/09(水) 08:57:20それが何をやりたいのか俺には理解できない
0437デフォルトの名無しさん
2009/12/09(水) 10:50:200438デフォルトの名無しさん
2009/12/09(水) 11:02:59PC上のエクセルで作成したCSVファイルを端末上に転送し
そのファイル内のデータを下記の様なプログラムでメモリ上に格納したいと考えています。
Sub MemYomikomi()
Dim StR As StreamReader
Dim strLine As String = ""
Dim intC As Integer = 0
Dim intCnt As Integer = 0
StR = File.OpenText(HanteiFilePath)
Do While StR.Peek() >= 0
strLine = StR.ReadLine
intC = InStr(strLine, ",", CompareMethod.Text)
CODE(intCnt) = Mid(strLine, 1, intC - 1)
Kekka(intCnt) = Mid(strLine, intC + 1)
intCnt = intCnt + 1
Loop
TextBox1.Text = intCnt
StR.Close()
End Sub
しかし、プログラムは正常動作するのですがメモリ中の結果を見ると文字化けしています。
色々調べてみた結果、OpentextはUTF-8のエンコードを読み取るとのことなので
問題のCSVファイルのエンコードが違うのかと思うのですが
運用時に制限を加えるより現在のエクセルからCSVで保存されたエンコードを読みたいと考えています。
現在のエンコードが何なのかも判っていないのですが
なんとかUTF-8以外のエンコードも文字を認識する方法はないでしょうか?
0439デフォルトの名無しさん
2009/12/09(水) 11:03:090440デフォルトの名無しさん
2009/12/09(水) 11:05:51取り敢えずStreamReaderを調べるといいよ
0441438
2009/12/09(水) 11:21:43見たつもりだったのに..
StR = File.OpenText(HanteiFilePath)
の部分を
StR = New StreamReader(HanteiFilePath, System.Text.Encoding.GetEncoding("Shift-JIS"))
としたら解決でした。
ありがとございましたー
0442デフォルトの名無しさん
2009/12/09(水) 17:41:330から加算されて10になったらというのを判断したい場合には
If Counter = 10 Then
・・・・・
Counter = 0
End If
でいいですか?
念のためIf Counter > 9 Then
の方がいいですか?
カウントアップが早かったりパソコンの処理が重かったりして10を飛び越してしまうことはないですか?
0443デフォルトの名無しさん
2009/12/09(水) 17:49:27ただ10という数字に積極的な意味があるなら
9より上より、10以上のほうがいいかな。
0444デフォルトの名無しさん
2009/12/09(水) 18:53:24心配してるようなことは起こりえない
仮に飛び越す可能性がある状況だったとして、そのIf Counter > 9のところ
だけうまく通ったところで、そんな状況で他のところがまともに動くとは思えないな
0445デフォルトの名無しさん
2009/12/09(水) 19:41:46カウンターを間違えて2回増加させるとか
カウンターにうっかり2を足してしまうとか
そういった不安要素を排除したいなら>=10のがいいんじゃね
ま、そんなレベルのプログラムでまともに動くわけないってのは>444に同意
0446デフォルトの名無しさん
2009/12/09(水) 19:48:33は持ってないのでしょうか?
例えば、※行の()の中をWithを活かして書けないものでしょうか?
With Form2.TextBox1
'色々設定
Form2.Controls.Add(Form2.TextBox1) '※
End With
よろしくお願い致します。
0447デフォルトの名無しさん
2009/12/09(水) 19:52:01真面目に日本語でオッケー過ぎる質問だと思う。
エスパーの俺でも訳がわからん。
0448デフォルトの名無しさん
2009/12/09(水) 20:11:420449デフォルトの名無しさん
2009/12/09(水) 23:50:56今のところ、WM_INPUTのメッセージから各デバイスの識別はできたのですが、いらないマウスからの情報を破棄する方法が見あたらず困ってます。
今後どのようなステップを踏めば良いのか御教授お願いします。
0450デフォルトの名無しさん
2009/12/09(水) 23:51:08レスありがとうございます。解決です。
0451デフォルトの名無しさん
2009/12/10(木) 00:29:16多分RawInputじゃ入力の破棄はできないはず
WH_MOUSE_LLなら破棄できるけど、このタイミングで入力元の識別できるかなー
WM_INPUTでdwExtraInfoを設定できる余地はあったっけ…と思ったらそもそもWH_MOUSE_LLの後か、WM_INPUT
WH_MOUSE_LLの最中にGetRawInputBufferは有効かどうか…?
0452デフォルトの名無しさん
2009/12/10(木) 00:37:24とするとfはTrueとFalseが選べますが、これを自分で定義する方法を教えてください。
例えばYes,Noとかできないでしょうか?
0453デフォルトの名無しさん
2009/12/10(木) 00:47:11あーそうだ、モジュールで
Yes As Boolean = True
とかすればいいんだー(棒
0454デフォルトの名無しさん
2009/12/10(木) 01:21:42出来ればコードエディタで入力時に選択肢が出るようにしたいですがそういう方法はないでしょうか?
0455デフォルトの名無しさん
2009/12/10(木) 01:28:530456デフォルトの名無しさん
2009/12/10(木) 02:18:07ほんと興味ないつまらない話ばっかな。
0457デフォルトの名無しさん
2009/12/10(木) 03:19:42返信ありがとうございます
WM_INPUTのフック無理なんですかね...
ちなみに検索をかけたら、dll作成というキーワードが出てきたのですが、この方法だと実現可能なのでしょうか。
0458デフォルトの名無しさん
2009/12/10(木) 03:57:43の後に
また
Dim i As Integer
と書きたい場合は
Dim i As Integer
と
Dim i As Integer
の間に何を書けば
0459デフォルトの名無しさん
2009/12/10(木) 04:39:160460デフォルトの名無しさん
2009/12/10(木) 07:56:430461デフォルトの名無しさん
2009/12/10(木) 08:05:090462デフォルトの名無しさん
2009/12/10(木) 09:01:24Color.Red
にするにはどうすれば
0463デフォルトの名無しさん
2009/12/10(木) 09:06:210464デフォルトの名無しさん
2009/12/10(木) 09:16:09>>463は間違い。
リフレクションを使うか。
0465デフォルトの名無しさん
2009/12/10(木) 09:23:570466デフォルトの名無しさん
2009/12/10(木) 09:26:21dim kc as KnownColor = System.Enum.Parse(GetType(KnownColor), "Red")
dim col as Color = Color.FromKnownColor(kc)
Console.WriteLine("{0:D} {0} -> {1}", kc, col)
--
141 Red -> Color [Red]
0467デフォルトの名無しさん
2009/12/10(木) 09:57:540468デフォルトの名無しさん
2009/12/10(木) 10:10:57WH_MOUSE_LLはグローバルフックでもDLLは不要
フック用DLLが必要なら.NETだと作れなくなってしまうしな
0469デフォルトの名無しさん
2009/12/10(木) 10:52:520470デフォルトの名無しさん
2009/12/10(木) 10:58:500471デフォルトの名無しさん
2009/12/10(木) 11:58:01システムカラーとか要らないならそれで良かったな確か。
0472デフォルトの名無しさん
2009/12/10(木) 12:55:24Color.FromName メソッド
定義済みの色の指定した名前から Color 構造体を作成します。
名前空間: System.Drawing
アセンブリ: System.Drawing (system.drawing.dll 内)
0473デフォルトの名無しさん
2009/12/10(木) 15:17:22でフォームが表示されるはずなんだけどピクリとも反応しない。
普通にデバッグすればフォームは立ち上がる。
なにか設定がおかしいのかな?
0474デフォルトの名無しさん
2009/12/10(木) 15:23:08>デバッグ>ウィンドウ>イミディエイト
>で
「イミディエイト ウィンドウ」が開きましたか?ならば正常です。
0475デフォルトの名無しさん
2009/12/10(木) 18:41:15このサイトには、ファイルの入出力においては、いくつかやり方がありますよ。
ただ、.NET Framework のクラス・ライブラリで動かすやり方で記述した
方がいいですよ。という印象を受けるような記事がかかれていますが、
私が感じる.NET Framework のクラス・ライブラリで記述するメリットは
Monoなど、「移植性」という部分だけだと感じるのですが、それ以外にも
何かあるのでしょうか?
.NET Framework そのもののバージョンアップ時の互換性が保たれ易いかは、
大きな違いがなさそうに思いますし。
クラスライブラリ関係の事がよくわかってないので、質問をしてみました。
誘導でも良いので何かヒントをお願い致します。
0476デフォルトの名無しさん
2009/12/10(木) 18:52:58.NET Framework は、Windows 標準でもあるし
VBやC#などでもクラスライブラリを使いまわしやすいからじゃない?
0477デフォルトの名無しさん
2009/12/10(木) 23:18:25Open "Hhhhh.dat" For Input As #1
みたいな書き方できるんだっけ?
0478デフォルトの名無しさん
2009/12/10(木) 23:25:21有効なファイル番号とかマルチスレッドのかけらも考慮されてないよな
まあVB6までは存在しなかった概念だから仕方ないが
0479デフォルトの名無しさん
2009/12/11(金) 01:02:42で透明にしたフォームは
画面を動画としてキャプチャするソフトに写らないけどどうすれば
0480デフォルトの名無しさん
2009/12/11(金) 01:21:37古いやり方に何のメリットがあるんだよ。
ただ不便なだけ。
0481デフォルトの名無しさん
2009/12/11(金) 06:40:06IDEで実行しても再現しない。よく考えると、どうやらVisual Studioo .NET 2003
に付属のDotfuscator Community Editionで難読化したものを実行すると動作がお
かしくなるらしい。
何なんだこれは、出来損ないではないか。
これ使ってる人いるのかな。
0482デフォルトの名無しさん
2009/12/11(金) 07:00:33どっちでもいいよ。
0483デフォルトの名無しさん
2009/12/11(金) 08:49:39ボクたちには関係無い話だな。w
0484デフォルトの名無しさん
2009/12/11(金) 09:07:28x/16bit
に書き直すとして
16bitの10ッしんすうと
xの10進数の値の部分はどうなるか計算できない
0485デフォルトの名無しさん
2009/12/11(金) 10:04:4610/2979 じゃなくて?
0486デフォルトの名無しさん
2009/12/11(金) 10:07:3116bitって何? 一般的に16bitっていうと具体的な値じゃなくて
値の記憶域の幅だぞ
0487484
2009/12/11(金) 11:18:190488146=135
2009/12/11(金) 11:31:56Dim x As Double = 1 / 297.9 * y
Console.WriteLine("{0}/{1}", x, y)
もしかしてこれだけのこと?
宿題としては意図が分からんな
整数なら理解できるがなぜ小数点・・・
0489デフォルトの名無しさん
2009/12/11(金) 11:49:38>>480
>>482
レスありがとうございます。
0490デフォルトの名無しさん
2009/12/11(金) 13:10:56ああ、1/297.9 ってBB確率か何かか。
そんな算数も判んなくて大丈夫か?
0491デフォルトの名無しさん
2009/12/11(金) 22:19:40ここのページで
参照の追加ボックスには
Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Public Assemblies
にあるアセンブリのみが表示されます
って書いてるんだけど明らかにそれ以外のものも参照の追加にあるんだけどなんで?
0492デフォルトの名無しさん
2009/12/11(金) 23:01:550493デフォルトの名無しさん
2009/12/11(金) 23:16:06・現在のプロジェクト ディレクトリ。
ここにあるアセンブリは、[参照] タブに表示されます。
・同じソリューション内のその他のプロジェクト ディレクトリ。
ここにあるアセンブリは、[プロジェクト] タブに表示されます。
・Public Assemblies フォルダ (Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Public Assemblies)。
ここにあるアセンブリは、[.NET] タブに表示されます。
と書いてあるよ?
0494デフォルトの名無しさん
2009/12/11(金) 23:20:15Private Sub Button_goukei_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles Button_goukei.Click
Dim kosuu, goukei As Integer : goukei = 0
Dim ctl As Control
For bangou = 0 To 2
ctl = Me.Controls(bangou)
kosuu = CInt(ctl.Text)
goukei += kosuu
Next
TextBox_goukei.Text = CStr(goukei)
End Sub
End Class
「Formに、TextBox1、TextBox2、TextBox3、TextBox4、TextBox_goukei(Text = "表示")、
Button_goukeiを配置し
プログラムを実行しButton_goukeiをクリックたら
TextBox1、TextBox2、TextBox3に数字を入力し、合計をTextBox4に表示する。」
と言うことをしたいんだけど、
bangou = 0のループでctl.Text = "表示"となって型が合わないという理由でエラーになる。
コントロールの配置順でControls(bangou)が決まるようなんだけど、狙い通りに行かない。
テキストボックスのプロパティを見ると、順番らしきものはTabIndexしか見あたらないんだけど
これとは違うみたい。
コントロールの順番を設定するにはどうすれば良いのでしょうか?
0495デフォルトの名無しさん
2009/12/11(金) 23:21:20Button_goukeiを配置し
↓
○「Formに、TextBox1、TextBox2、TextBox3、TextBox4、TextBox_goukei、
Button_goukei(Text = "表示")を配置し
0496デフォルトの名無しさん
2009/12/11(金) 23:37:58番号でコントロールを指定できて何か嬉しいことある?
本当にある?
よーく考えた方がいいよ。
0497デフォルトの名無しさん
2009/12/11(金) 23:51:20C:\Windows\Microsoft.net\DirectX for Managed Code
とか、あきらかにその三つに含まれないものも.NETタブにあるんだけどなんで?
0498デフォルトの名無しさん
2009/12/12(土) 00:45:140499デフォルトの名無しさん
2009/12/12(土) 08:55:04だと少数3位で切り捨てになっちゃうので
3位を四捨五入するにはどうすれば
0500デフォルトの名無しさん
2009/12/12(土) 08:58:160501デフォルトの名無しさん
2009/12/12(土) 13:58:310502デフォルトの名無しさん
2009/12/12(土) 14:56:010503デフォルトの名無しさん
2009/12/12(土) 16:58:50コンテキストメニューをrichtextboxでも同様に使いたいのですが、
デフォルトで無い状態です。 どうすればいいですか?
0504デフォルトの名無しさん
2009/12/12(土) 17:12:580505デフォルトの名無しさん
2009/12/12(土) 19:06:270506デフォルトの名無しさん
2009/12/12(土) 19:28:53C言語だと
int x,y; x=10; y=x+10; printf("%d",x+y);
みたいにいっぱいかけたんだけどVBは?
0507デフォルトの名無しさん
2009/12/12(土) 19:31:580508デフォルトの名無しさん
2009/12/13(日) 00:12:320509デフォルトの名無しさん
2009/12/13(日) 01:15:120510デフォルトの名無しさん
2009/12/13(日) 18:50:22審査が通らない
0511デフォルトの名無しさん
2009/12/13(日) 19:03:27ブレークポイントを設定して止めたり、一時停止ボタンで実行を
止めたりしたときに、やたらと開発環境がハングして困っています。
これはソースコードに問題がある場合がありますか?それとも
VS2008以降ではこういうことはなくなっている問題なのでしょうか?
ご指導ください。
0512デフォルトの名無しさん
2009/12/13(日) 19:05:460513デフォルトの名無しさん
2009/12/13(日) 19:07:480514デフォルトの名無しさん
2009/12/13(日) 19:15:03一応スタートページは表示していないのですが、コードウインドウはたくさん
残したまま終了していて、再度立ち上げるときにはたくさんのコードウインドウが
開かれて立ち上がります、これがいけないのでしょうか・・・
>>513
マシンのスペックが足りていないということでしょうか?
メモリーは一応4GB積んであり、物理メモリーは850MGぐらいまでしか
使用されていない状態のようで、そちらの余裕はあるようなのですが。
0515514
2009/12/13(日) 19:34:210516514
2009/12/13(日) 19:42:09やたらと時間がかかる傾向にありました。2回目以降はそれほどかからない
のですが、1回目のときは30秒ぐらいかかっています。CPUは、一応
Core2Duoの2.6GHzなのですがこれでも遅いのか・・・
0517デフォルトの名無しさん
2009/12/13(日) 19:48:46msgboxデバッグで十分
0518デフォルトの名無しさん
2009/12/13(日) 20:19:31VSとは関係なく、何かしらのファイルを削除しようとすると30秒かかるって事なら
OSのファイル管理の具合が悪いか、ドライブの物理的異常かもねー。そうなると板違い
0519デフォルトの名無しさん
2009/12/13(日) 21:04:040520デフォルトの名無しさん
2009/12/13(日) 21:14:580521デフォルトの名無しさん
2009/12/13(日) 21:19:140522デフォルトの名無しさん
2009/12/13(日) 21:24:05メッセージボックスのメッセージ部分のウインドウハンドルを取得する方法で
Windows全体の子ウィンドウを列挙して調べる以外の方法があれば
流れのような感じでも良いので教えていただけないでしょうか?
0523デフォルトの名無しさん
2009/12/13(日) 21:28:02他プロセスなら列挙しかないだろ。
0524デフォルトの名無しさん
2009/12/13(日) 21:48:44CBTフックの方法で調べてみたいとおもいます。
0525デフォルトの名無しさん
2009/12/13(日) 23:28:41なぜトドメになるのかkwsk
0526デフォルトの名無しさん
2009/12/13(日) 23:40:28何故かは知らんけ瀕死のHDDにそんなことしちゃダメなのは常識でしょ。
しかし、最近のHDDはSMART当てにならんね。
死ぬときは何の予兆もなくコロッと逝く。
その辺は10年ぐらい前のHDDの方がまともだった気がする。
0527デフォルトの名無しさん
2009/12/14(月) 00:19:33他にも色々と問題が発生してそうだけどな
一応SMART確認して、ヤバそうなら他HDDにバックアップしてから
平気そうならいきなりスキャンディスクかな
それでもデバックやらで固まるならVS入れ直すな
それでもダメならOSから入れ直し
0528デフォルトの名無しさん
2009/12/14(月) 01:33:13規模の小さなアプリ開発で
ファイルベースのデータを扱う際のDALC
(データアクセスロジックコントロール)の作り方がわかりません。
どういう点に注意して作れば良いのでしょうか。
0529デフォルトの名無しさん
2009/12/14(月) 01:58:31どうしてもGoogleAdsenseには自動でログインをする事が出来ません。
(Yahoo mail等には普通にログインする事は出来ています。)
■Google Adsense のページ
https://www.google.com/adsense/login/ja/
■記述したVB.netのコード
objeBrowser.Navigate(strNavigate, Nothing, Nothing, Nothing, Nothing)
Do
Loop Until Not objeBrowser.Busy
Dim HTMLDoc As mshtml.HTMLDocument
HTMLDoc = objeBrowser.Document
Dim iCol As mshtml.IHTMLElementCollection
iCol = HTMLDoc.getElementsByTagName("input") ← ここで通常は iCol に複数のオブジェクトが取得されなくてはならないハズが
取得されません。
一体なぜGoogle Adsenseのログインページだけinputタグの値を
上記のコードで取得する事が出来ないのでしょうか?
0530デフォルトの名無しさん
2009/12/14(月) 03:56:45悪用しないで下さいと言われても
悪用以外に使い道がなさそうなツール。
0531デフォルトの名無しさん
2009/12/14(月) 07:09:43そのページinputタグが無いみたいだけど
0532デフォルトの名無しさん
2009/12/14(月) 08:38:20inputじゃないね
ページによってソース違うからソース見てみ
0533デフォルトの名無しさん
2009/12/14(月) 08:56:29だって
0534529
2009/12/14(月) 21:23:36恐らくJavaScriptでDOMを操作して作成しているのだと思います。
>>532
FireFoxのアドインで「要素を調査」でページが表示され切ってから
確認すると間違い無くinputタグが吐き出されているのですが、、、
どうしてもGoogleのこのページだけ自動でログインする事が出来ません。。。
誰か凄腕の方。この牙城を突破する方法をご指南下さい。。。。
このページだけ自動ログインできない、、、
0535デフォルトの名無しさん
2009/12/14(月) 21:43:220536デフォルトの名無しさん
2009/12/14(月) 21:58:40googleに直接メールして聞いてみりゃいいじゃん
0537デフォルトの名無しさん
2009/12/14(月) 22:00:040538デフォルトの名無しさん
2009/12/14(月) 22:09:50一応5秒程度スリープして試してみてもダメでした。。。
Googleトラップをなんとしても突破したいです。。。
凄腕のPGさん突破できた人はいますか?
マジでここだけ無理。。。
0539デフォルトの名無しさん
2009/12/14(月) 22:13:490540デフォルトの名無しさん
2009/12/14(月) 22:21:580541デフォルトの名無しさん
2009/12/14(月) 22:27:33いい加減しつこい
VIPでヤレ
0542デフォルトの名無しさん
2009/12/14(月) 22:38:300543デフォルトの名無しさん
2009/12/14(月) 22:45:02でいいのかな。
0544デフォルトの名無しさん
2009/12/14(月) 22:48:07すみません。ソースを iframeで検索してもヒットしませんでした。
どうやってURLを見つけられたのでしょうか?
またURLを教えて頂けると非常に助かります。
0545デフォルトの名無しさん
2009/12/14(月) 22:50:48どうもありがとうございます。Googleの牙城を突破する事が出来ました^^;
やっぱ上には上がいますね。凄いです。
>>541
低脳は氏ね。
0546デフォルトの名無しさん
2009/12/14(月) 22:50:560547デフォルトの名無しさん
2009/12/14(月) 22:50:57このソースがログインボックス生成してるのわかるじゃん
でこれを読むと
document.write('\n\74iframe style\75\・・・・
ってことはログインボックスのあたりを右クリックでプロパティで
URLゲット
0548デフォルトの名無しさん
2009/12/14(月) 22:51:470549デフォルトの名無しさん
2009/12/14(月) 23:00:39本当に凄いです。スーパーハカーです。
>>546
お前はクズ。
0550デフォルトの名無しさん
2009/12/15(火) 00:14:290551デフォルトの名無しさん
2009/12/15(火) 00:17:53呼んだ?
0552デフォルトの名無しさん
2009/12/15(火) 00:36:51解決して良かったね、もう来るなよ。
0553デフォルトの名無しさん
2009/12/15(火) 20:22:57容量がぴったり同じものを最初に探し出して
次にファイルの適当な位置を何箇所か比較するという
方法を考えているのですが、いきなりファイルの途中を読み込む
方法がわからないのですが、良い方法があったら教えて頂きたいです。
0554デフォルトの名無しさん
2009/12/15(火) 20:26:530555デフォルトの名無しさん
2009/12/15(火) 20:48:42ファイル比較は比較対象を想定できるかどうかで望ましいアプローチが結構変わるね
0556デフォルトの名無しさん
2009/12/15(火) 22:11:19カスタムコントロールを自作してフォームに貼り付けようとしたところ
以下のようなエラーメッセージが吐かれて貼り付けられません。
「コントロールSystem.Windows.forms.tabcontrolがデザイナでハンドル
されていない例外をスローして、無効になりました。
例外:
DataSourceのプロパティまたは列SettingNameにバインドできません。
パラメーター名:dataMember
スタック トレース:
〜以下略
このエラーはどういったときに発生するものなのでしょうか?
よろしくお願いいたします。
0557デフォルトの名無しさん
2009/12/15(火) 22:22:37フォームではなくコード上でまずインスタンス生成するコードを書いて、例外でストップするように設定し、デバッグ実行してみたら?
0558デフォルトの名無しさん
2009/12/15(火) 22:23:01その手の問題の多くは、DesignMode への考慮不足だけど・・・。
0559デフォルトの名無しさん
2009/12/15(火) 22:34:43ありがとうございます。
仰るとおり DesignMode の考慮不足だったようですorz
次から tabcontrol を扱う際は注意したいと思います。
0560553
2009/12/16(水) 00:54:58FileStreamでできました。
0561デフォルトの名無しさん
2009/12/16(水) 18:03:21キーを叩くごとに効果音が鳴るようにしようと
「My.Computer.Audio.Play("")」を使ってみたんですが
連打するたびにこの処理だと、重すぎてプログラム全体に支障が出てしまいました。
もう少し負担の軽い、効果音専用のようなコードは無いでしょうか?
0562デフォルトの名無しさん
2009/12/16(水) 18:37:05WAVEファイルを再生する
ttp://dobon.net/vb/dotnet/programing/playmidifile.html
MIDI、MP3などの音楽ファイルを再生する
使ったことは無いから知らないぞ
大体連打なんだから音鳴らさなくても困らないんじゃないか
0563562
2009/12/16(水) 18:38:37beep音
0564デフォルトの名無しさん
2009/12/16(水) 18:46:43DirectXすごいな
0565デフォルトの名無しさん
2009/12/16(水) 18:53:38さっそく試してみようと思います。
ありがとうございました!
0566デフォルトの名無しさん
2009/12/16(水) 19:32:28http://www.microsoft.com/downloads/details.aspx?FamilyId=5493F76A-6D37-478D-BA17-28B1CCA4865A&displaylang=en
0567デフォルトの名無しさん
2009/12/16(水) 20:20:24ListBoxの値をユーザーが追加、編集できるようなプログラムを
作りたいと考えているのですが、値をどう保存すればよいのか、
が分かりません。
アプリケーション構成ファイルに簡単に保存できるのでしょうか?
iniやcsvファイルなどを使って保存しておくしかないのでしょうか?
0568デフォルトの名無しさん
2009/12/16(水) 20:24:360569デフォルトの名無しさん
2009/12/16(水) 20:44:39やってみます!
0570デフォルトの名無しさん
2009/12/16(水) 21:51:170571デフォルトの名無しさん
2009/12/16(水) 21:56:280572デフォルトの名無しさん
2009/12/16(水) 22:01:340573デフォルトの名無しさん
2009/12/16(水) 22:10:310574デフォルトの名無しさん
2009/12/16(水) 22:14:310575デフォルトの名無しさん
2009/12/16(水) 22:19:380576デフォルトの名無しさん
2009/12/16(水) 22:22:03フォーマットを意識したコードが一切不要
0577デフォルトの名無しさん
2009/12/16(水) 23:13:050578デフォルトの名無しさん
2009/12/16(水) 23:51:44リストボックスに表示するような系統のもの(データ件数が多いもの)であれば、
mdbファイルにまとめておくだろうな。
SQL文書いてアクセスするだけで目的のものがすぐに取得できるし、
そういうSQL文での抽出が便利であると感じるケースが多いから。
0579デフォルトの名無しさん
2009/12/16(水) 23:53:380580デフォルトの名無しさん
2009/12/16(水) 23:57:280581デフォルトの名無しさん
2009/12/16(水) 23:58:58子プログラムから数値以外の値を返す方法はない?
親と子は両方VB.NETで作成します。
子をDLLにしろってのは無しで。別プロセス別アプリケーションでお願いします。
子がファイルにシリアライズ出力してそれを親が読み取る以外の方法があれば教えて。
0582デフォルトの名無しさん
2009/12/17(木) 00:00:570583デフォルトの名無しさん
2009/12/17(木) 00:02:380584デフォルトの名無しさん
2009/12/17(木) 00:08:150585デフォルトの名無しさん
2009/12/17(木) 00:16:110586デフォルトの名無しさん
2009/12/17(木) 00:59:04ありがとう。それぞれ調べてみるよ。
0587デフォルトの名無しさん
2009/12/17(木) 01:03:32普通ってなんだよっ
0588デフォルトの名無しさん
2009/12/17(木) 01:18:20いや、あおりとかじゃなくて。
異なるフォームでのデータのやり取りではなさそうだし、親となるクラスが、
子どもとなるクラスを持っているというわけでもなさそうだし。
0589デフォルトの名無しさん
2009/12/17(木) 01:40:17特に理由がなければ基本的にはやらない方向で考えるけどな。
0590デフォルトの名無しさん
2009/12/17(木) 04:55:38ついでにDCOMとかの話だもんな。
0591デフォルトの名無しさん
2009/12/17(木) 07:12:52ソケット通信がいいよ
0592デフォルトの名無しさん
2009/12/17(木) 12:15:170593581,586
2009/12/17(木) 23:14:45親がProcess.StandardOutput.ReadToEndで読めました。楽でいいね。ありがとう。
0594デフォルトの名無しさん
2009/12/18(金) 01:53:470595デフォルトの名無しさん
2009/12/18(金) 02:04:130596デフォルトの名無しさん
2009/12/18(金) 02:22:39オメ!
0597デフォルトの名無しさん
2009/12/18(金) 12:57:56>>593なら実質的に同じようなもんだと思うんだが
0598デフォルトの名無しさん
2009/12/18(金) 17:43:070599デフォルトの名無しさん
2009/12/18(金) 20:39:03MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, _
MessageBoxDefaultButton.Button1, 0)
こんな感じで記述しているメッセージボックスなんですが、
なぜか素通りしてしまう場合がありました。これまで、
ここまでしっかり引数を書いたときには発生していなかったのですが、
ここのところ頻発してしまうので困っています。環境はVS2005ですが
何か注意するべき点があるでしょうか?よろしくです。
0600デフォルトの名無しさん
2009/12/18(金) 21:05:55VB2008Expressだからですか?
VS2008Exだとあるんでしょうか?
0601600
2009/12/18(金) 21:19:42ないんか。なんでや・・・VSはあるんか糞
ナンデワザワザケズッテルンヤ?
0602599
2009/12/18(金) 21:21:01見てみるとそういう場合はほとんど例外なくMessageBoxは表示されます。
ゆっくり一つ一つステップを確認しながら実行する分には表示されるという
感じなのです。こういうことはしばしばあるものでしょうか?あるとすると
原因はどんなことが考えられるでしょう?
0603600
2009/12/18(金) 21:41:2699%勘違いだと思うよ。
0604デフォルトの名無しさん
2009/12/18(金) 21:44:38トラックバー内のどの部分でマウスの左ボタンを押下しても、
つまみをつかんだ状態にしたいのですが可能でしょうか?
つまみのない場所で、マウスの左ボタンを押下すると、
つまみがその位置に移動し、その状態でマウスを動かすと
つまみも連動して動くといったような処理がしたいです。
よろしくお願いします。
0605599
2009/12/18(金) 21:56:33どうもです。Debug.Print()がもちろんやってみています。
確実にMessageBox.Show()のすぐ次のDebug.Print()が実行されて
います(100%)。
こうしたことは、以前にはMessageBox(MSG)とだけ簡略に書いたとき
にはときどき起きていたもので、それからは多くの引数を書き、かつ
戻り値を受ける形で書くことにしてほぼそうしたケースはなくなって
いたのですが、本日になってやってみているとそれが同様にすり抜ける
場合が頻発してきたのです。不思議なのですが、どうも現実のようです。
どうするべきだろうか、どうしてもYesNoCancelで表示したいのだが。
0606600
2009/12/18(金) 22:00:510607599
2009/12/18(金) 22:06:41>デバッグプリンとではカウントしているかどうか
カウント、というと意味としては「Debug.Print("ABC")」という行を
MessageBox.Show()の直後の行に置き、実行したときに、イミディエイト
ウインドウに ABC と表示されるかどうか、というチェックでいいのですよね?
ですから、そのチェックでは確実に100% ABC と表示されているのでしたが。
そういう意味じゃなくて、でしょうか??
0608デフォルトの名無しさん
2009/12/18(金) 22:08:58賭けてもいいよ
0609599
2009/12/18(金) 22:09:37それで、その上で、その直前のMessageBox.Show()は実行されていない
のは確かなのでした。
ところが、その前からブレークポイントで止めておいて、そこから
ステップ実行していくと、確実にMessageBox.Show()が実行されて
メッセージが出てボタンで選択できるのでした。
つまり、出てきていいはずのところが、通常実行では出てこないという
状況なのです。
0610600
2009/12/18(金) 22:10:20素通りなんて普通に考えてない。
メッセージ表示する行だけにして、何度も実行してみて表示されない時があるならそういうこともあるということだろうね。やってみては?
0611599
2009/12/18(金) 22:15:19どうもです。この現象、どうも書く場所(メソッド)によるようなのです。
あるメソッド内ではほとんどそういうことは起きませんが、ある場所では
高確率で発生します。そのときにその場所は確実に通っています。条件分岐
されていないフローの中でDebug.Print("ABC")して確認していました。
0612デフォルトの名無しさん
2009/12/18(金) 22:16:580613デフォルトの名無しさん
2009/12/18(金) 22:17:010614600
2009/12/18(金) 22:20:31コード全体見えてないんで私はどんな制御してるのか知らないけど。
どうしてもマシンのせいにしたいならリソース不足でメッセージが表示できないとかじゃないかなw
0615デフォルトの名無しさん
2009/12/18(金) 22:23:05なってるか確認するのが大事だ
debug.printじゃだめ
0616599
2009/12/18(金) 22:25:31一つ奇妙な現象としてあることは、実行しているアプリのウインドウが
アクティブで動いているときに、その箇所にきて、本来メッセージが出る
べきタイミングで出ないときには、開発環境がアクティブになって、画面上
前に出てくるのでしたw。
そしてそこが流れたことを示すイミディエイトウインドウ上のPrint結果が
出ていて、そこを通ったときに開発環境がアクティブになったことを示して
いました。
正常にメッセージが出るときにはそうした奇妙な現象は起きず、アプリの
ウインドウがアクティブになりっぱなしで普通なのでした。どうも変な現象
なのです。
0617デフォルトの名無しさん
2009/12/18(金) 22:27:540618599
2009/12/18(金) 22:28:59>debug.printじゃだめ
ではテキストファイルなどに書き込んでみるのもやってみます。
いろいろご助言ありがとうございました、また思いつく限り調べて
みてわかり次第報告します。
0619デフォルトの名無しさん
2009/12/18(金) 22:29:510620599
2009/12/18(金) 22:33:53WindowMsgなどをフックするコントロールを使っていて、
可能性としてはもしかするとそこが悪さしているのでしょうか・・・。
開発環境がアクティブになるというようなソースコードは存在して
いないので、なぜそういうことがあるのかはわからないのです。
またわかったら来ます。
0621デフォルトの名無しさん
2009/12/18(金) 22:37:110622デフォルトの名無しさん
2009/12/18(金) 22:44:58ただ人に「悩み」聞いてもらいたかっただけってか。
なんか女のグチみたいだな。
やな感じ。
0623600
2009/12/18(金) 22:46:25で本来のメッセージはなぜか表示されないので、かわりに直前にアクティブだったウィンドウが・・・
0624デフォルトの名無しさん
2009/12/18(金) 22:49:020625デフォルトの名無しさん
2009/12/18(金) 23:15:310626デフォルトの名無しさん
2009/12/18(金) 23:24:48どう考えてもそれが怪しいだろ。
0627デフォルトの名無しさん
2009/12/18(金) 23:25:41.NETでは無くてもほとんど問題ない
0628600
2009/12/18(金) 23:41:31しね
0629デフォルトの名無しさん
2009/12/18(金) 23:43:48関係ないのにずーっと使い続けてるのって、バカみたいだよ。
0630600
2009/12/18(金) 23:45:380631デフォルトの名無しさん
2009/12/18(金) 23:46:590632600
2009/12/18(金) 23:47:520633600
2009/12/18(金) 23:49:000634600
2009/12/18(金) 23:49:240635600
2009/12/18(金) 23:49:350636600
2009/12/18(金) 23:49:450637600
2009/12/18(金) 23:50:270638600
2009/12/18(金) 23:52:010639600
2009/12/18(金) 23:52:340640600
2009/12/18(金) 23:52:510641600
2009/12/18(金) 23:55:090642デフォルトの名無しさん
2009/12/19(土) 00:21:57よそでやれ。
0643デフォルトの名無しさん
2009/12/19(土) 00:24:090644600
2009/12/19(土) 06:01:58いや、俺この書き込みが初参戦だが。
0645デフォルトの名無しさん
2009/12/19(土) 23:26:48Formの背景イメージをcomboboxで選んで変更できるようにしたいんですが
難しいでしょうか?
ピクチャーボックス内の画像変更はできたのですがFormのほうがどうしてもできませんorz
どなたかお願いします ((○| ̄|_
0646600
2009/12/19(土) 23:27:400647デフォルトの名無しさん
2009/12/19(土) 23:34:41ここで質問してません
0648デフォルトの名無しさん
2009/12/19(土) 23:38:050649デフォルトの名無しさん
2009/12/19(土) 23:43:23ありがとうございました
Meの部分を直球でForm1としていたのが原因でした
単純ミスですがとても助かりました┏○ペコ
0650600
2009/12/20(日) 00:04:510651デフォルトの名無しさん
2009/12/20(日) 00:04:55すんません。
このやり方を使って、shellで起動したプログラムの終了までVBのプログラムを
待機させるにはどうしたらいいですか?
引数つきのshellでなおかつ待機機能が欲しいのです。
0652デフォルトの名無しさん
2009/12/20(日) 00:10:330653デフォルトの名無しさん
2009/12/20(日) 00:11:38Process.WaitForExitでいいじゃん
0654デフォルトの名無しさん
2009/12/20(日) 00:15:25ありがとうございました。
0655デフォルトの名無しさん
2009/12/20(日) 00:17:01Dim hProcess As System.Diagnostics.Process
hProcess = System.Diagnostics.Process.Start("起動する外部プログラム名", "引数")
hProcess.WaitForExit()
hProcess.Close()
hProcess.Dispose()
0656600
2009/12/20(日) 00:36:23proc = System.Diagnostics.Process.Start("プログラムファイルの名前", "引数")
proc.WaitForExit()
proc.Close()
proc.Dispose()
0657デフォルトの名無しさん
2009/12/20(日) 01:14:30アクセス制限がされているフォルダに保存されているファイルを
別のフォルダに保存したい。
ファイルをコピーする瞬間だけ「別のユーザーで実行」のような
処理をしてくれるクラス(方法)はないでしょうか。
現在は、ファイルコピーのみを実行するアプリケーションを作成し、
それを別のプログラムから「別のユーザーで実行」してファイルコピーの
アプリケーションを起動しています。しかし、Windowsをログオフした状態で
タスクスケジューラーのようなもので起動するとうまく動作していないようなので、
他の方法を模索しています。
なにか上手い方法をご存知の方がいましたら教えてください。
0658デフォルトの名無しさん
2009/12/20(日) 01:27:29そのフォルダへの実行権を持つユーザー名で
タスクを登録すればいいんじゃない?
タスク登録時にユーザー名とパスワードを入力しておけば
タスク実行時には聞かれないし。
0659デフォルトの名無しさん
2009/12/20(日) 01:30:08http://www.atmarkit.co.jp/fdotnet/dotnettips/877processstartuser/processstartuser.html
0660デフォルトの名無しさん
2009/12/20(日) 01:32:19runas /env /user:%USERDOMAIN%\権限を持ったユーザー名 "実行するプログラム名"
0661デフォルトの名無しさん
2009/12/20(日) 01:57:200662661
2009/12/20(日) 01:58:030663デフォルトの名無しさん
2009/12/20(日) 02:16:55アプリケーションの名前、ユーザー名、パスワード、およびドメインを指定してプロセス リソースを起動し、リソースを新しい Process コンポーネントに関連付けます。
ttp://msdn.microsoft.com/ja-jp/library/sxf2saat.aspx
0664デフォルトの名無しさん
2009/12/20(日) 04:03:130665デフォルトの名無しさん
2009/12/20(日) 04:18:08>>658
ファイルコピーは一連の処理の中の一部分になります。
メインのプログラムは、フォルダにアクセス権を持っていないユーザーで起動します。
(セキュリティの関係上、なんでもできるユーザーを作りたくないので)
>>659
>>663
>「別のユーザーで実行」してファイルコピーのアプリケーションを起動しています。
「別のユーザーで実行」をProcess.Start メソッドでやってみて
ダメだったので質問しました。説明が足りず申し訳ないです。
タスクスケジューラーに実行アプリケーションを登録しておいて、
ログオンしたままだと問題なく動作するのですが、
ログオフすると動作しませんでした。
(ユーザーとパスワードを指定しないとログオフしても問題なく動作するので、
タスクスケジューラーに登録したユーザーでアプリケーションを実行しているのに、
さらにその中で別のユーザーとしてアプリケーションを実行しているのが
悪いのかなと推測しています。)
>>660
runas は、対話型でパスワードの入力を求められるのでログオフした状態だと
どうすればよいのか分かりません。
0666デフォルトの名無しさん
2009/12/20(日) 06:53:11>>659 のページのやつでログオフして実験したけど、出来たよ。
最初は、失敗したんだが、呼び出される側のコピーするプログラムを
フルパスで書いたらちゃんと実行された。
管理者しかアクセス出来ないフォルダへアクセスできた。
0667デフォルトの名無しさん
2009/12/20(日) 21:04:010668デフォルトの名無しさん
2009/12/20(日) 21:27:000669デフォルトの名無しさん
2009/12/20(日) 22:08:30できますた トンです
0670デフォルトの名無しさん
2009/12/21(月) 16:11:412つ以上持つことは出来ますか?
クラスが
item.ID
item.Code
item.Name
とあったとき、
とName(String)とID(integer)の両方をKeyとして
コレクションの要素を取れるようなことはできるでしょうか?
0671デフォルトの名無しさん
2009/12/21(月) 17:19:12DLLファイルの格納先を1つとし、
各exeがそのDLLを参照する、という運用をしたく、
GACを用いて実現する方法は調べてわかりました。
しかし、DLL更新時に使用するexe側の再コンパイルが必要な点や、
exe側が使用しているDLLのバージョンが判断しずらい点などを考慮して
その方法は採用しない事になりました。
DLLを各exeのローカルに配置するほうが良いかとも思うのですが、
『regsvr32を用いて登録すれば実現出来ないか?』という提案が出ました。
しかし実際に"regsvr32 xxx.dll"とすると、
『xxx.dllは読み込まれましたが、DllRegisterServerエントリポイントが見つかりませんでした。』
といったエラーメッセージが表示されます。
これはDLL側の設定に何か問題があるのでしょうか?
ご存知の方がいればご教示下さい。
0672デフォルトの名無しさん
2009/12/21(月) 17:30:14COMとして登録しても.NET間の呼び出しには使用できない。
またCOMとして登録する方法もregsvr32ではない。
アセンブリはexeのあるディレクトリか
exeのあるディレクトリからみてサブディレクトリに置く必要がある。
特定のネーミングルールに従うか、構成ファイルで指定する必要がある。
DEVPATHは開発用なのでお勧めしない。
これも構成ファイルにDEVPATHを使うための設定をする必要がある。
0673デフォルトの名無しさん
2009/12/21(月) 17:31:12app.configの<dependentAssembly>使えば厳密名付きdllならexeのサブフォルダ以外以外でも見に行けるな、一応
0674デフォルトの名無しさん
2009/12/21(月) 17:53:52collection(ID)とcollection(Name)どっちもで取りたい?
ならKeyedCollectionだけじゃ無理だね
0675671
2009/12/21(月) 19:04:47>>673
レスありがとうございます。
>COMとして登録しても.NET間の呼び出しには使用できない。
>またCOMとして登録する方法もregsvr32ではない。
ということは、VB.NET2005で作成したDLLは
GACを使用しない限りEXEファイルと同一フォルダ
或いはサブフォルダに配置する以外ない、ということでしょうか?
0676デフォルトの名無しさん
2009/12/21(月) 19:24:02わざわざやる価値がないしトラブルの元。
ハードリンクでも作っとけw
0677デフォルトの名無しさん
2009/12/21(月) 19:25:28まあ、あきらめて個別に置くのが無難だよ。
0678デフォルトの名無しさん
2009/12/21(月) 19:27:25これも手間が増えるだけで余りメリットはないと思うよ。
0679デフォルトの名無しさん
2009/12/21(月) 19:28:50現実にはあまり意味ないから。
0680デフォルトの名無しさん
2009/12/21(月) 20:06:40次のような感じのコードでデータを一時テーブルに保存し、
別の場所でそれを読み出しています。
Dim sql as string = "select * into #tmp from hoge"
Dim cmd as New SqlCommand(sql,connection)
cmd.ExecuteNonQuery
上記の内容だと期待通りの動作をするのですが、
抽出条件を指定するためにwhereを追加すると動作しなくなります。
Dim sql as string = "select * into #tmp from hoge where id = @id"
Dim cmd as New SqlCommand(sql,connection)
cmd.Parameters.AddWithValue("id", 1)
cmd.ExecuteNonQuery
プロファイラで調べてみると パラメータを指定すると sp_executesql
を使用して sql を実行する様で、「ストアド内で作成した一時テーブルは
ストアド終了と共に削除される」という仕様に従い削除されているようです。
これを回避するいい手があれば教えてください。
出来ればグローバル一時テーブルは使用しない方向でお願いします。
よろしくお願いします。
0681デフォルトの名無しさん
2009/12/21(月) 20:48:18できる
自分でインデックス付きのItemプロパティを定義すればいいだけ
検索は線形検索でもいいしID専用のDictionaryを持ってもいいし
0682デフォルトの名無しさん
2009/12/21(月) 21:20:21ByVal hWndInsertAfter As Integer, ByVal X As Integer, ByVal Y As Integer, ByVal cx As Integer, _
ByVal cy As Integer, ByVal wFlags As Integer) As Integer
Private Sub SetWindow()
SetWindowPos(p.MainWindowHandle, 0, 0, 0, 100, 100, &H40)
End Sub
として、XPでは問題なく動くのに、VistaやWindows7では、32ビット版でも全然動かないのですが、
どうしてなのでしょうか?
教えて下さい。よろしくお願いします。
0683671
2009/12/21(月) 21:21:41ネットなどで調べてみても、共有化についてメリットよりも
デメリットのほうが多いという意見が多数でしたので、
使用しない方向で話を進めてみたいと思います。
ありがとうございました。
0684デフォルトの名無しさん
2009/12/21(月) 22:00:42とりあえずハンドルやポインタにはIntegerではなくIntPtrを使う
0685デフォルトの名無しさん
2009/12/21(月) 22:22:490686デフォルトの名無しさん
2009/12/21(月) 23:07:43ありがとうございます。
GetLastErrorの使い方を調べて、拡張エラー情報が1400というのは分かったのですが、
それが何なのか、調べても見つけられませんでした・・・
できましたらどのように調べたら良いのか教えて下さい。お願いします。
0687デフォルトの名無しさん
2009/12/21(月) 23:11:441400 は、「ウィンドウ ハンドルが無効です。 」だってさ。
0688デフォルトの名無しさん
2009/12/22(火) 00:06:08welt見つけられました。ありがとうございました。
0689デフォルトの名無しさん
2009/12/22(火) 00:43:57VS2008pro動きますか?
0690デフォルトの名無しさん
2009/12/22(火) 01:09:24概念より機能を重視か
0691デフォルトの名無しさん
2009/12/22(火) 01:43:37???
真面目に言ってる意味がわからんぞ
0692デフォルトの名無しさん
2009/12/22(火) 02:51:200693デフォルトの名無しさん
2009/12/22(火) 08:46:290694デフォルトの名無しさん
2009/12/22(火) 09:40:040695デフォルトの名無しさん
2009/12/22(火) 10:23:25VB.net IPアドレスを取得するには
でググル
0696デフォルトの名無しさん
2009/12/22(火) 10:36:23Vistaや7とかでうまく動くかも確認した方がいい。
0697デフォルトの名無しさん
2009/12/22(火) 10:54:35教えてください。
ツリーノードのForeColorで色を変えているのですが
選択状態のときは背景色、青、前景色白になってしまいます。
選択状態のときの前景色もForeColorで指定した色に
したいのですが難しいでしょうか?
よろしくお願いいたします。
0698697
2009/12/22(火) 10:56:56この辺じゃないでしょうか?
http://dobon.net/vb/dotnet/internet/ipglobalproperties.html
0699デフォルトの名無しさん
2009/12/22(火) 13:22:170700デフォルトの名無しさん
2009/12/22(火) 14:19:49D&Dでエクスプローラに対してファイルコピー、移動等を行う際、
ドロップ先のフォルダ・パスのみを取得する方法はありませんか?
D&D直後は一覧に処理する内容をまとめておき、最後に開始ボタンがクリックされた際に、
まとめてファイルのコピー、移動を行わせたいと考えています。
自分なりに検索してみたところ、ICopyHookとかいう高度な?処理が
必要なのではないか、というところまで確認しました。
ただ当方英語がチンプンカンプンなものでMSDNとか見てもさっぱりです。
日本語で解説されたサイトや書籍をご存知の方がいましたら、そちらについても
教えていただければ嬉しいです。
0701デフォルトの名無しさん
2009/12/22(火) 14:24:46やりたいことはVB.NET2008,PowerPoint2003で、スライドショーの遠隔(同期)操作です。
WebBrowserコントロール上で展開しているPowerPointのスライドショーがあるとき、
スライドショーで発生したイベント(例えばボタンのクリックなど)をフォーム側で取得、
また、イベントを発生させる、といったことはできるのでしょうか?
開始や終了であればPowerPoint.Applicationクラスのイベントで取得できるのですが……
0702デフォルトの名無しさん
2009/12/22(火) 16:24:260703デフォルトの名無しさん
2009/12/22(火) 16:35:10http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=25960&forum=7
>ファイルの存在をチェック して、そのファイルの属性を取得 して、
>System.IO.FileAttributes.Directory 属性があれば、ディレクトリ (フォルダ)
>
>System.IO.Directory.Exists()
>System.IO.File.Exists()
0704デフォルトの名無しさん
2009/12/22(火) 16:44:17VB.net SetWindowsHookEx
0705701
2009/12/23(水) 23:31:29とりあえずは、調べて試してみようと思います。
0706デフォルトの名無しさん
2009/12/24(木) 12:17:38DirectCast(sender, TextBox).SelectionStart = 0
VB2005で開発しています。
テキストボックスとボタンのフォーカス移動にて
問題が発生したので教えてください。
テキストボックスからtabキーで、
タブインデックスで次に指定しているボタンへフォーカスを動かす際に、
ボタンへフォーカスが移動しているのに、
テキストボックス内にキャレット(カーソル)が残っています。
キャレットが出た理由・消す方法を教えていただけませんか。
tabキー押下後にEnterを押すと、ボタン押下の動作をするのですが、
キー入力を行うと、テキストボックスに入力したキーが表示され、
フォーカスがテキストボックスへ移動してしまいます。
処理のルートとして、
Handles TextBox7.Validating の動作としては、データの取得を行い、
異常ルート:
DirectCast(sender, TextBox).Select()
DirectCast(sender, TextBox).SelectionStart = 0
正常ルート:
取得したデータを表示
DirectCast(sender, TextBox).SelectionLength = 0
DirectCast(sender, TextBox).DeselectAll
を正常ルートの最後に配置してみてもだめでした。
よろしくお願いします。
0707706
2009/12/24(木) 18:24:19ここに提示した情報だけでは、結果は出せないような情報でした。
すみません。
tabキーを押下した際に、
ActiveControl.Name でアクティブなオブジェクトを取得してみたところ、
Enabled = false になっている項目が、選択されている場合に発生していたようです。
ボタンを連打した場合の対処で、
処理中はオブジェクトを一時的にEnabled=Falseとして、
処理終了後にEnabled=Trueに復帰させるという処理を行っていたのが原因でした。
テキストボックスからEnabled=Falseなオブジェクトをアクティブなオブジェクトとして
設定をした場合に発生するようです。
対処としては、一時的なEnabled処理のオンオフ後にフォーカスを設定する。
で解決しました。。。
0708デフォルトの名無しさん
2009/12/24(木) 19:09:47どんな形で計算すれば良いでしょうか?
0709デフォルトの名無しさん
2009/12/24(木) 19:14:560710デフォルトの名無しさん
2009/12/24(木) 19:58:170711デフォルトの名無しさん
2009/12/24(木) 22:06:47宿題ってそんなもんが出るのか。
独学の方が早くね?
0712デフォルトの名無しさん
2009/12/24(木) 22:33:500713デフォルトの名無しさん
2009/12/24(木) 22:52:410714デフォルトの名無しさん
2009/12/24(木) 22:58:11真面目な話、「どれにチェックが付いているか調べ」ればいいんじゃないの?
0715デフォルトの名無しさん
2009/12/24(木) 23:29:420716デフォルトの名無しさん
2009/12/24(木) 23:56:580717デフォルトの名無しさん
2009/12/24(木) 23:57:40チェックされた瞬間にどのボタンをチェックしたかを変数に入れときたくなるな。
もっとも1000個ぐらいじゃたとえ総当りしても対して時間はかからなさそうだけど
0718デフォルトの名無しさん
2009/12/24(木) 23:58:051000個でまとまったラジオボタンをユーザがどう使うんだ?
C#のスレでも同じように数千個のラベルがどうとかってレスが以前あったな
0719デフォルトの名無しさん
2009/12/25(金) 00:40:200720デフォルトの名無しさん
2009/12/25(金) 15:38:37その中に、カーソルを定義し、カーソルにて取得した結果を
データセットに格納するという処理があるのですが、
カーソル定義の際に指定した列以外に『ROWSTAT』という列が
データセット内に存在しています。
内容を参照するとDBNullとなっているのですが
この列は何なのでしょうか?
また当該列をデータセットに含めない方法はあるのでしょうか?
0721デフォルトの名無しさん
2009/12/25(金) 18:18:17このバージョンにはGUIでの帳票作成機能が含まれていないので、
以下の「印刷プレビューを表示する」の、
Private Sub pd_PrintPage(ByVal sender As Object, _
ByVal e As System.Drawing.Printing.PrintPageEventArgs)
の関数の内部に図形や文字を描くコードを記述する方法で、帳票機能を
実現するしかないと思うのですが、そこで、以下の「折り返して描画する」の
コードを記述しようとしたのですが、うまくいきませんでした。
Dim g As Graphics = PictureBox1.CreateGraphics()
の部分を書き換えたら良いのだろうと思うのですが、どのように
記述したらよろしいのでしょうか?
印刷プレビューを表示する
http://dobon.net/vb/dotnet/graphics/printpreviewdialog.html
折り返して描画する
http://dobon.net/vb/dotnet/graphics/drawstring.html#rect
0722デフォルトの名無しさん
2009/12/25(金) 18:38:59どう「うまくいかない」のかが分からないので答えようがないです
0723デフォルトの名無しさん
2009/12/25(金) 18:53:44文字列そのものがプレビューに表示されるように出来ないのです。
プレビューには、画像のみが表示されています。
私が書いたコードは以下の通りです。やりたいことは、画像と
矩形の文字を表示させることです。
Private Sub pd_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs)
' 以下4行は「印刷プレビュー」のコピペ
Dim img As Image = Image.FromFile("c:\test.bmp")
e.Graphics.DrawImage(img, 0, 0, img.Width, img.Height)
e.HasMorePages = False
img.Dispose()
' これより下は「折り返して描画する」のコピペ
Dim g As Graphics = PictureBox1.CreateGraphics()
Dim drawString As String = "智に働けば角が立つ。情に棹させば流される。" _
+ vbCrLf + "意地を通せば窮屈だ。とかくに人の世は住みにくい。"
Dim fnt As New Font("MS ゴシック", 12)
Dim rect As New RectangleF(10, 10, 100, 200)
g.FillRectangle(Brushes.White, rect)
e.Graphics.DrawString(drawString, fnt, Brushes.Black, rect)
fnt.Dispose()
g.Dispose()
End Sub
0724デフォルトの名無しさん
2009/12/25(金) 19:27:33その後半のgは関係無いよね
それとHasMorePageの意味分かってる?
0725デフォルトの名無しさん
2009/12/25(金) 19:47:44そうです。このコードだと、後半のgが関係ないで終わって
しまっているので、そのgを、印刷プレビューに関連付けたいのです。
HasMorePageの意味は、次のページに関する指定だと思いますが。
0726デフォルトの名無しさん
2009/12/25(金) 20:25:35その後で描いても問題無かった
つか試してみたらちゃんと描画されたんだけど…
0727デフォルトの名無しさん
2009/12/25(金) 21:04:240728デフォルトの名無しさん
2009/12/25(金) 21:49:550729デフォルトの名無しさん
2009/12/25(金) 22:26:52縦と横の項目名を指定するとそのデータが得られるという方法はないでしょうか?
0730デフォルトの名無しさん
2009/12/25(金) 22:28:28それ以上はHTMLの知識の問題なのでスレ違い
0731デフォルトの名無しさん
2009/12/25(金) 23:49:31HTMLを解析する方法でやってみます。
0732デフォルトの名無しさん
2009/12/26(土) 00:39:34多分全部分描写してるのが原因だと思うんですが、これを回避するような方法ってありますか?
0733デフォルトの名無しさん
2009/12/26(土) 00:47:42・数千個のラジオボタンがうんたらかんたら
・100000万行のStringをTextBoxにうんたらかんたら ← New!
0734デフォルトの名無しさん
2009/12/26(土) 00:57:150735デフォルトの名無しさん
2009/12/26(土) 01:08:45aaa.dllというものの中に、Functionが複数入っていて、
最終的に一つの結果を得たいのですが、それを使う際には参照設定をして
それ以外ではどんな風に書けば良いでしょうか?
(複数の関数というのはそれぞれは単体で外部からは使わなくて
1つのメインの関数が他の関数を使って結果を得るようになっています)
Dim MyFunc As New aaa
と定義して
res = aaa.hogehoge(hoge1,hoge2)
とすると結果は得られるのですが、いまいち正しい方法のような感じがしません。
普通の関数やAPIなどの時のように
res = hoge(hoge1,hoge2)
のように書ける方法があれば教えて頂きたいです。
0736デフォルトの名無しさん
2009/12/26(土) 01:10:110737デフォルトの名無しさん
2009/12/26(土) 01:18:41public classじゃなくてpublic moduleにすればそういう使い方ができるよ。
0738デフォルトの名無しさん
2009/12/26(土) 01:32:030739デフォルトの名無しさん
2009/12/26(土) 05:03:100740デフォルトの名無しさん
2009/12/26(土) 08:04:160741デフォルトの名無しさん
2009/12/26(土) 08:04:590742697
2009/12/26(土) 09:44:230743デフォルトの名無しさん
2009/12/26(土) 09:46:580744デフォルトの名無しさん
2009/12/26(土) 11:22:47そう思うならやってみろ。そして泣け。
0745デフォルトの名無しさん
2009/12/26(土) 12:06:56文字の描画は、PictureBox1ではなく、帳票の中に行いたいのです。
>>727
2005を使用しています。
>>728
g.〜 を e.Graphics に変換すると帳票の中に印刷出来ました。
解決しました。ありがとうございます。
0746デフォルトの名無しさん
2009/12/26(土) 13:27:02Excel出力に関して調べていると、以下のサイトに方法が載っていましたが、
これは、新規にファイルを作成し、そこに表示する方法です。
http://www.geocities.jp/i_love_balard/myhome/dnet/excel1.html
出来れば、あらかじめひな形を準備しておいて、それを開いて該当箇所に
データを表示させるという方法を行いたいのですが、そのような方法は
可能なのでしょうか?
サイトのコードを見る限りでは、Excelファイル名の指定を行う箇所が
ありませんので、不可能のようにも思えますが・・・
0747デフォルトの名無しさん
2009/12/26(土) 13:29:240748デフォルトの名無しさん
2009/12/26(土) 14:38:38このあたりの情報を参考にして、自分の好きなようにカスタマイズ
ttp://dobon.net/vb/dotnet/file/getdirectories.html
ttp://dobon.net/vb/dotnet/file/getfiles.html
ttp://dobon.net/vb/dotnet/file/getlogicaldrives.html
0750デフォルトの名無しさん
2009/12/26(土) 17:00:58Dim hash As [String] = [String].Empty
なる記述をWebサイトで見つけました。
この [ ] の記述は何を表しているんでしょうか。
よろしくご教示お願いします。
0751デフォルトの名無しさん
2009/12/26(土) 17:05:180752デフォルトの名無しさん
2009/12/26(土) 17:12:29tp://wednesdaymoon.net/kzweb/articles/vbnet/article.aspx?articleid=92
0753デフォルトの名無しさん
2009/12/26(土) 17:13:44http://wednesdaymoon.net/kzweb/articles/vbnet/article.aspx?articleid=92
下の方の「使い方は以下の通りです。」の欄に表記されているようだ。
ただし、質問者が見たサイトであるという確証はない。
0755デフォルトの名無しさん
2009/12/26(土) 17:28:50Visual Basic 言語のキーワード
を見れ
0756デフォルトの名無しさん
2009/12/26(土) 17:42:300757750
2009/12/26(土) 17:59:36ありがとうございます。
HELPで調べてみました。
Visual Basic 言語のキーワードから
> 次のキーワードは予約済みであり、プログラミングの要素 (変数やプロシージャなど) の名前として使用でき
> ません。ただし、名前を角かっこ ([ ]) で囲むと、この制約を回避できます。詳細については、「宣言された要素
> の名前」の「エスケープされた名前」を参照してください。
「宣言された要素の名前」の「エスケープされた名前」から
> 通常は、Visual Basic によって予約されているキーワード (Case や Friend など) と一致する名前を要素名
> として使用することはできません。ただし、名前を角かっこ ([ ]) で囲んで、エスケープされた名前として定義
> できます。角かっこによってあいまいさがなくなるため、エスケープされた名前では、Visual Basic のキーワード
> と一致する名前を使用できます。定義した名前を後でコード内で使用するときも、同じように角かっこで囲みます。
[ ]で囲むと予約語でもエスケープされてその名前を変数名やプロシージャなんかで使用できるということですね。
全然知りませんでした。
ありがとうございます。
でもそうした場合、Webサイトの例のStringはStringとして使われるべきで、それ以外に利用しようが無いように見えます。
Dim hash As String = String.Empty とするのが普通に正しい気がします。
私の認識は間違っていますでしょうか?
>>756
??
もう少しヒントください orz
0758デフォルトの名無しさん
2009/12/26(土) 18:04:580759デフォルトの名無しさん
2009/12/26(土) 18:10:43[]を使えばこのクラス名を指すことになる
予約語Stringは単純にSystem.Stringのエイリアスに過ぎないが
なんで予約語の方を嫌ったのかは書いた奴に聞けとしか言い様がないな
0760750
2009/12/26(土) 18:28:47なるほどです。
分かりやすい解説、ありがとうございました。
>>758 >>759
> 書いてる奴に聞け
なるほどごもっともです。
ですが、私のあずかり知らぬ世間一般の論理が其処にあるのかな・・とも思いましたので
こちらで質問させていただいた次第です。
--
皆さん、ご親切に導いてくださりありがとうございました。
感謝いたします。
0761デフォルトの名無しさん
2009/12/26(土) 21:05:42それはどんなふうに書けばよいでしょうか?
試したところ
Unable to find an entry point named aaa in DLL module1.dll.
というエラーが出てしまいました。
0762デフォルトの名無しさん
2009/12/27(日) 18:15:06エクセルのような項目を使いたいのですが何かありませんか?
0763デフォルトの名無しさん
2009/12/27(日) 18:17:340764デフォルトの名無しさん
2009/12/27(日) 18:54:11おk
0765デフォルトの名無しさん
2009/12/27(日) 19:13:16ありがとうございます。
次にテキストボックスとボタンを作成し、テキストボックスにあるフォルダのアドレスからフォルダ内のファイルを読み込んできて、
ファイル名やファイルサイズ等の情報をDataGridに表示させたいのですが、このような事に関する分かりやすく紹介しているサイト等はありませんか?
もしくは説明していただけるようでしたらお願い致します。
0766デフォルトの名無しさん
2009/12/27(日) 19:18:28「表示するだけ」ならlistviewが一番簡単だと思うけどな
0767デフォルトの名無しさん
2009/12/27(日) 19:21:220768デフォルトの名無しさん
2009/12/27(日) 19:22:220769デフォルトの名無しさん
2009/12/27(日) 19:23:15もっと基礎的な所から勉強したほうが良いかと
http://www.google.co.jp/search?q=vb.net+%93%FC%96%E5
0770デフォルトの名無しさん
2009/12/27(日) 19:37:48テキストボックスに入力されたアドレスの解析(ファイル, フォルダ, ドライブ, etc.)とか
それらの存在チェックとか面倒だろうし、TreeViewでフォルダを対象にして
選択されたものをListViewに表示するだけでいいんじゃね
フォームの左側にTreeView、右側にListViewとかはまぁ結構ありきたりだけど
0771デフォルトの名無しさん
2009/12/27(日) 19:40:040772デフォルトの名無しさん
2009/12/27(日) 19:50:02課題じゃなくここ半年ちょっとの間、プログラミング一切せずにいたらなんか出来てた事がまったく分からなくなってしまっていて、
ちょっとヤバイと思って丁度フォルダ内のファイルを管理するソフトが欲しかったものでちょっと慣らしに作ろうと思ったもので。
根本的にDataGridの存在自体を忘れていたのがちょっとまずくて質問しましたが、
もう暫く自分で調べて頭動かしてから分からなければきまた質問させてもらいます。
失礼しました。
0773697
2009/12/27(日) 20:03:040774デフォルトの名無しさん
2009/12/27(日) 20:07:00さすがに自分でも恐いレベルに何も出来なくなってます。
0775デフォルトの名無しさん
2009/12/27(日) 20:19:51という、偏見を持ったプログラマーがココに居ます。
0776デフォルトの名無しさん
2009/12/27(日) 20:24:20完全にプログラム以外の仕事を半年やってればまぁ分からなくもない
0777デフォルトの名無しさん
2009/12/27(日) 20:25:480778デフォルトの名無しさん
2009/12/27(日) 20:33:220779デフォルトの名無しさん
2009/12/27(日) 20:41:090780デフォルトの名無しさん
2009/12/27(日) 21:12:420781デフォルトの名無しさん
2009/12/27(日) 23:40:11議論の対象になることはたまにあるが
それらに厳密な定義も基準もないわけで
本人がそう思えばそれまでだろ
そんなの議論したって水掛け論になるだけ
0782デフォルトの名無しさん
2009/12/27(日) 23:43:320783デフォルトの名無しさん
2009/12/27(日) 23:56:57壊れてるファイルでGDI+で一般的なエラーとか出るんだが、現在は
tryで無視してるけどそのエラー回避する方法あるかな?
watchで見るとerrorcodeとかあるんだが、それ指定するとそんなものはないと
言われるし
0784デフォルトの名無しさん
2009/12/28(月) 00:58:22どんなコード書けば「一般的なエラー」なんて例外が出るのか知らんけど、
普通にMSDNライブラリのPropertyIdListの解説にあるとおりじゃないの?
----
イメージにプロパティ項目がないか、イメージ形式でプロパティ項目がサポートされていない場合、PropertyIdList プロパティは、空の配列 (長さが 0 の配列) を返します。
----
しかし、「……んだが」って語尾を口語で使うのはただでさえ爺臭いのに、
重ねて使うとさらに効果抜群だねw
思うんだが、2chだってもう10年も歴史があるわけで、いい加減ガキ臭い訳のわからん
2ch風の言い回しを無理に使うの止めたらどうかなと思うんだけど、
少しもそういう空気が醸成される雰囲気がないのが日本のネット文化の痛いところだなあ。
つくづく。
0785デフォルトの名無しさん
2009/12/28(月) 01:24:35こうですか?わかりません><
0786デフォルトの名無しさん
2009/12/28(月) 04:16:160787デフォルトの名無しさん
2009/12/28(月) 11:43:48触れてはならないんですかね?
0788デフォルトの名無しさん
2009/12/28(月) 12:46:35重ねて使うとさらに効果抜群だねw
0789デフォルトの名無しさん
2009/12/28(月) 16:31:06ここは質問スレだぞ。
0790デフォルトの名無しさん
2009/12/28(月) 17:24:59ADO.NET にて、(テーブルとレポートオブジェクトなどを作って)
あらかじめ準備しておいた mdb ファイルに接続し、
テーブルの内容を変更し、VB.NETからの操作で、Access(もしくは
Accessランタイム)を起動し、あるレポートオブジェクトを開く
という事は可能なのでしょうか?
帳票1種類でmdbファイルを1つ準備しておいて、マクロでAutoexecを
使用して起動時に自動的にレポートオブジェクトを開く以外に方法が
無いかが気になって質問してみました。
0791デフォルトの名無しさん
2009/12/28(月) 17:59:09今後、a(1)やa(0,0)に簡単に置き換え可能なようにして置きたいのですが・・・
0792デフォルトの名無しさん
2009/12/28(月) 18:01:570793デフォルトの名無しさん
2009/12/28(月) 20:08:17できるよ。Access がインストールされてれば、Access.Application で。
ランタイム版のみだとやったことないなぁ。
0794デフォルトの名無しさん
2009/12/29(火) 08:02:55VB.NET側で、Accessのmdbファイルのどのレポートオブジェクトを
開くかを指定はできますか?
0795デフォルトの名無しさん
2009/12/29(火) 09:04:19http://www.happy2-island.com/access/gogo03/capter60005.shtml
0796デフォルトの名無しさん
2009/12/29(火) 10:31:45VB.NETから呼ぶ場合の具体的なコードをお願い致します。
そのようなサンプルサイトがヒットする検索キーワードの案内でも結構です。
0797デフォルトの名無しさん
2009/12/29(火) 10:39:500798デフォルトの名無しさん
2009/12/29(火) 11:03:28探して見つけ切れなかったから質問してるのですよ。
ADO.NET関連など、テーブルの操作ばかりがヒットしてしまうのです。
0799デフォルトの名無しさん
2009/12/29(火) 11:05:380800デフォルトの名無しさん
2009/12/29(火) 11:06:430801デフォルトの名無しさん
2009/12/29(火) 11:08:300802デフォルトの名無しさん
2009/12/29(火) 11:16:110803デフォルトの名無しさん
2009/12/29(火) 11:18:06通常は0.数秒の世界だと思うんだが。
0804デフォルトの名無しさん
2009/12/29(火) 11:21:14(サイトは、Excelを起動するものです。)
http://hanatyan.sakura.ne.jp/dotnet/Excel01.htm
0805デフォルトの名無しさん
2009/12/29(火) 11:22:28|| 検索結果 約 2,800 件中 1 - 10 件目 (0.07 秒)
だった。
0806デフォルトの名無しさん
2009/12/29(火) 13:24:57その検索を行った際のキーワードを教えて下さい。
0807デフォルトの名無しさん
2009/12/29(火) 13:29:10することが出来るというところまでわかりました。
このコードだとAccessを終了してしまうのですが、Accessを終了
しないままで処理を終える事は可能なのでしょうか?
(印刷プレビューを確認するだけの処理です)
Dim access As Object
access = CreateObject("Access.Application")
access.OpenCurrentDatabase("C:\test.mdb")
access.DoCmd.OpenReport("レポート名称未設定1", 0 )
0808デフォルトの名無しさん
2009/12/29(火) 13:40:420809デフォルトの名無しさん
2009/12/29(火) 13:47:26それでも終了してしまいます。
acViewPreviewは値が2なので、以下のように記述しても終了してしまうのです。
Dim access As Object
access = CreateObject("Access.Application")
access.OpenCurrentDatabase("C:\test.mdb")
access.DoCmd.OpenReport("レポート名称未設定1", 2 )
0810デフォルトの名無しさん
2009/12/29(火) 13:49:20しないのです。
http://oshiete.searchina.ne.jp/qa958987.html
http://okwave.jp/qa/q958987.html?order=&by=
0811デフォルトの名無しさん
2009/12/29(火) 13:53:260812デフォルトの名無しさん
2009/12/29(火) 14:03:20それをやってみても、同じでした。
私なりにいろいろ見てみたところ、タスクマネージャで確認してみると、
プロセスは残っていました。
そこで、表示モードかと思い、以下のコードを追加で書いてみると、
うまくいきました。
access.Visible = True
もうひとつだけ、確認したいのですがこのコードのみでは、後処理の
問題が残ると思います。
ちゃんと以下のようなコードを実行する必要があると思うのですが、
ユーザがAccessの右上の×印をクリックして終了する場合は、
必要はないと考えても良いのでしょうか?
(最後のNothinはどこかで処理を含める必要がありそうな気が
するのですが・・・)
access.CloseCurrentDatabase()
access.Quit()
access = Nothing
0813デフォルトの名無しさん
2009/12/29(火) 14:05:54ユーザーが Access を閉じてくれたんならいらない。
0814デフォルトの名無しさん
2009/12/29(火) 14:10:41素早い回答ありがとうございます。
目的のものを作ることが出来ました。ありがとうございました。
0815デフォルトの名無しさん
2009/12/30(水) 14:21:320816デフォルトの名無しさん
2009/12/30(水) 17:16:040817デフォルトの名無しさん
2009/12/31(木) 19:07:39リストボックスにファイル名を登録するようにしているのですが、
複数のファイルを同時にドロップした時に
複数選択にした順番で登録したいのですが、
順番が変わってしまいます。
登録はForEachで配列を順に登録しているだけなのですが、
選択した順番で処理する方法があったら教えて頂きたいです。
0818デフォルトの名無しさん
2009/12/31(木) 19:13:19そもそも選択順の情報自体が存在しない
0819デフォルトの名無しさん
2009/12/31(木) 21:53:27ちなみに、プログラムにファイル名が通知されるときの順番は、
ドラッグ&ドロップを開始する時、マウスポインタがポイントしていたファイルを
先頭に円筒ループするような順番となるから、ユーザー側では(その気になれば)
順番を制御することはできたはずだと思った。
0820デフォルトの名無しさん
2009/12/31(木) 22:47:12って思って調べる/訊くてのなら、不思議じゃないべ。
そういう疑問を解決することで、より知識が増える/理解が進むものだろう。
「出来ない」って言われて、「そうですか」で終わるのなら進歩はないだろうけど。
0822デフォルトの名無しさん
2010/01/01(金) 04:53:11大凶おめでとう
0823デフォルトの名無しさん
2010/01/01(金) 19:21:55色でないとダメ?
普通にカラーダイアログで拾った色使うとワケワカな動作するんだが…
黒→白&左→右で例えると
1列目は白(ここですでにおかしい)2列目が黒でそこから右に向かって
白くグラデしていくという
つまり本来のグラデの右端に来るべきものがある一定の幅左側に来て
しまっているという
斜めだともっとおかしい…つかその白い部分の幅が1文字分〜対角線
までだったり安定しないし
エラーは何も出さないけどどうなってるものやら
0824デフォルトの名無しさん
2010/01/01(金) 19:33:03絶対にこれが思い込み。
そんなわけねえじゃん。
単にLinearGradientBrushの開始点と終了点の問題に決まってる。
こんなの質問する前に自分で確認しろよ。
0825デフォルトの名無しさん
2010/01/05(火) 00:32:20LZHやRARやGCAはどうすれば。
さらに、Q4やMAGなどの画像をVBで見るにはどうすれば。
0826デフォルトの名無しさん
2010/01/05(火) 01:30:35CやC++で書かれていようがVBとそんなに使い方が違うこともない
0827デフォルトの名無しさん
2010/01/05(火) 09:17:27C読めないとか論外
0828デフォルトの名無しさん
2010/01/05(火) 09:42:260829デフォルトの名無しさん
2010/01/05(火) 10:38:54SPI直接呼ぶのが面倒ならラッパー使えば?
ttp://elku.at.infoseek.co.jp/memo/spi_com.html
0830デフォルトの名無しさん
2010/01/05(火) 10:41:14レジストリ弄らないといけないし
0832デフォルトの名無しさん
2010/01/05(火) 12:41:17を参考にフックを触り始めたのですが、
疑問に思うところがあったので質問させていただきます。
SetWindowsHookExの第4変数wParam に渡す値ですが、
MSDNのリファレンスでは AppDomain.GetCurrentThreadId は旧式だから
Thread.ManagedThreadId を使え、とのこと。
そこでThreading.CurrentThread.ManagedThreadIdを試してみましたが、
返ってくる値が GetCurrentThreadId とは違うようです。
適切な代替手段はあるのでしょうか、ありましたら方法をお願いします。
0833デフォルトの名無しさん
2010/01/05(火) 19:36:41どうしても必要ならWin32APIのGetCurrentThreadId呼べるけど
そんなことしたら本末転倒だから警告抑止して古いの使い続けた方がマシだと思う
0834デフォルトの名無しさん
2010/01/05(火) 22:19:44いまどきは、Reg-Free COM とか、分離 COM って呼ばれるモノがあってな・・・。
0835デフォルトの名無しさん
2010/01/06(水) 00:06:12VB2005Proにある「ReportViewer」と「CrystalReportViewer」は
通常はどちらを使用すればよろしいのですか?
また用途や機能の違いなどもご教示いただければ幸いです。
よろしくお願いいたします。
0836デフォルトの名無しさん
2010/01/06(水) 00:28:39あんまり使うもんじゃない。
0837デフォルトの名無しさん
2010/01/06(水) 09:23:16レスありがとうございます。
調べていたらそれらしい記述にぶつかりました。
警告だけなので無視していきます。
0838デフォルトの名無しさん
2010/01/06(水) 15:08:32↓の下から2番目のレスには「API 使う方が良いかな」と書き込んでいる人がいるけどどうかな?
ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=28860&forum=7
>警告を無視して AppDomain のメソッドを使うか、API 関数を使うかはその人次第ですが、AppDomain.GetCurrentThreadId のドキュメントにネイティブの ID を取得できるとは書いていない以上 API 使う方が良いかな。
>少なくともそのスレッドがメインスレッドである限り、恐らく問題は発生しないでしょうし。
おれもAPIのSetWindowsHookExに渡すからGetCurrentThreadIdを使ってるけど・・・
0839デフォルトの名無しさん
2010/01/06(水) 16:41:05将来バージョンのWindowsや.NETで仕様が変わったりして
本当にマネージコードからは使えなくなったときには
AppDomain.GetCurrentThreadIdは削除されるだろうから気付きやすいかもしれない
0840デフォルトの名無しさん
2010/01/06(水) 19:05:50ありがとうございます。
ではみなさんは帳票類は何で作っているのですか?
PrintDocument??
0841デフォルトの名無しさん
2010/01/06(水) 22:11:060842デフォルトの名無しさん
2010/01/06(水) 22:16:040843エロ坊主
2010/01/07(木) 00:48:13http://www.nakadashi.to/movie/1683.htm から、
http://cpz9.actnw.jp/naka5/1683-1.zip をダウンロードしたいのですがうまくイけません。
DownloadFileメソッドを使って Headers.Add で http_referer などいろいろ指定してみたのですが。
ホントにエロい人教えてください。
0844デフォルトの名無しさん
2010/01/07(木) 00:51:480845デフォルトの名無しさん
2010/01/07(木) 00:59:070846デフォルトの名無しさん
2010/01/07(木) 01:08:440847デフォルトの名無しさん
2010/01/07(木) 01:16:350848デフォルトの名無しさん
2010/01/07(木) 01:20:200849デフォルトの名無しさん
2010/01/07(木) 07:58:10webreq.referer = URL
ダウンロード
0850デフォルトの名無しさん
2010/01/07(木) 14:32:07同じスレッドでも、OSに管理されているスレッドと、
コード上のThreadオブジェクトは別物、という感じですね。
前者を後者でラップして直接触れないようにした、と言うべきかな?
今はサンプルいじってる段階なんでどっちでもいーや、ですが、
きちんとしたものを作るならAPI使って取得しておいたほうが無難ですかね。
0851デフォルトの名無しさん
2010/01/07(木) 16:13:06>きちんとしたものを作るならAPI使って取得しておいたほうが無難ですかね。
おれもそう思ってAPI使って取得してるけど>>839氏のいうことも分る
「本当はやっちゃいけないこと」なんだろうけど、messageboxの表示位置を
指定したいので仕方なく使ってる
0852デフォルトの名無しさん
2010/01/07(木) 16:45:39俺はめんどくさくても自作する。
0853デフォルトの名無しさん
2010/01/07(木) 23:41:18やっぱり自作が一番かな・・・
めんどうだから自作しなかった(ていうかCBTフック使って新クラス作ってた)
けど一から自作も検討してみるかな
0854デフォルトの名無しさん
2010/01/08(金) 10:09:31うちはメッセージボックスもどきとエラーの時はVSみたいな概要とエラー詳細が出るようなメッセージボックス2つ用意して使い分けてるよ
あとメッセージボックスは一定時間経過後自動で閉じるオプションとか付けてる
どうせダイアログでメッセージ開くだけなら大したことないだろうし、レイアウトやアイコンも自由だから試しに簡単なの作ってやってみればどうかな?
0855デフォルトの名無しさん
2010/01/08(金) 14:32:08自前でクラスを初めて(6.0以来)作っているのですが、
Public Shared にして宣言した変数を外部から代入したりすると警告が出ます。
Public Class hogehoge
Public Shared hogege as String
End Class
Dim hg as New hogehoge
hogehoge.hogege = "test"
のような感じです。一応これでも代入は成功して参照も出来るですが、本来はどうあるべきなのでしょうか?
Newで実体をインスタンスの実体を作ったオブジェクトへの代入に警告が出る理由が今イチ分かりません・・・。
警告文は以下のような感じです。
「インスタンスを経由する共有メンバ、定数メンバ、列挙型メンバ、または入れ子にされた型へのアクセスです。正規の式は評価されません。」
0856デフォルトの名無しさん
2010/01/08(金) 14:45:17型.変数 =""
だと思うけど?
0857855
2010/01/08(金) 14:48:56hogehoge.hogege = "test"
↓
hg.hogege = "test"
でした。。
0858デフォルトの名無しさん
2010/01/08(金) 15:08:37はたしてこの説明が本当に正しいかどうかは自分で評価してほしい。
ttp://blogs.wankuma.com/torikobito/archive/2007/04/04/70121.aspx
0859デフォルトの名無しさん
2010/01/08(金) 16:48:24TableAdapterを使用してプログラムを作成しています。
連続型のオートナンバー型のフィールドについて質問があります。
オートナンバー型のフィールドの名前を【ID】とします。
データメンテ画面上でレコードを削除(たとえば【ID】は、25)した後、
すぐにレコード追加を行うと、【ID】フィールドに、25と表示されてしまいます。
(さきほど削除したレコードと同じ【ID】)
保存されたデータを見ると、【ID】フィールドには正しく26と入力されています。
この現象は、回避できないのでしょうか?
0860855
2010/01/08(金) 17:39:26レスありがとうございます。
一応そこは目を通してあるのですが、
では一体どういう形であるべきなのか・・・が解らないのです。
使えてしまう分だけ、無視していいものか、それとも回避可能な形があるのか解らず。。すいません。。
0861デフォルトの名無しさん
2010/01/08(金) 18:09:01意図的にSharedで定義しているんだから迷わずインスタンスからは使わないようにすればいいんじゃない?
インスタンスごとに何かするのならSharedで定義するはずもないし
VB6でいうモジュールの変数みたいな感じになるんだからインスタンス化して使うのは逆に抵抗があると思うんだけど・・・
0862デフォルトの名無しさん
2010/01/08(金) 19:58:33複数のコンソールアプリでApp.Configを作成しました。
設定内容を共通Configで持ちたいのですが
共通Configはどこに作ればいいのでしょうか?
0863デフォルトの名無しさん
2010/01/08(金) 20:01:21VB.NETから使用する処理を作成しているのですが、
DLL側の関数の戻り値の型が『HANDLE』型となっています。
調べたところ、VB.NETでは『System.IntPtr』型で
対応可能という記述を見つけたので
そのように対応したのですが、
正常に動作しない状態です。
原因が戻り値の型の定義ミスなのか、
その他にあるのかの切り分けが出来ない状態です。
『HANDLE』型=『System.IntPtr』型の認識で問題ないでしょうか?
なお、下記のようなエラーが発生していました。
『保護されているメモリに読み取りまたは書き込み操作を行おうとしました。他のメモリが壊れていることが考えられます。』
0864デフォルトの名無しさん
2010/01/08(金) 20:26:35単純にP/Invokeの使い方を間違ってるだけだから
とりあえず、DLL側のC(?)の関数のプロトタイプと、
Declare部分の定義をさらそうよ。
0866デフォルトの名無しさん
2010/01/08(金) 21:24:06>書き間違えた点がありました。
正しいわけだが。
例えば
Dim hg As New hogehoge, mg As New hogehoge
があったとして、hg の hogege と mg の hogege は同じ場所にあるわけだからして
「インスタンス (ここでは hg や mg) の hogege」ではなく
「クラス (hogehoge) の hogege」と指定するのが正しい。
0867デフォルトの名無しさん
2010/01/08(金) 23:43:00なるほど、自動で閉じるオプションはいいかも
ひまができたら簡単なの作ってみようと思う
アドバイスありがと
0868デフォルトの名無しさん
2010/01/09(土) 08:20:31Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
If ListBox1.SelectedIndex < 1 Then Exit Sub
Dim S As String
S = ListBox1.SelectedItem
Dim i As Integer
i = ListBox1.SelectedIndex
ListBox1.Items.Insert(i, S)
ListBox1.Items.RemoveAt(i + 1)
End Sub
0869デフォルトの名無しさん
2010/01/09(土) 13:24:270870デフォルトの名無しさん
2010/01/10(日) 01:11:21元n番目(今n+1番目)を削除したら、そりゃ元通りになると思うのね。
0871デフォルトの名無しさん
2010/01/10(日) 23:19:52Dim ar(2, 1) As String
ar(0, 0) = "みかん"
ar(1, 0) = "りんご"
ar(2, 0) = "ばなな"
ar(0, 1) = "100"
ar(1, 1) = "200"
ar(2, 1) = "300"
ar(2,1)="300"
このような配列を名前で並べ替えたり数量で並べ替えたりしたいのですが
Sortメソッドはどのように使ったら良いでしょうか?
0872デフォルトの名無しさん
2010/01/10(日) 23:25:122次元配列は他にも何かと冷遇されてるから使わない方がいいよ
配列の配列を使いましょう
でも>>871の場合はそういう話ではなくてクラスを使うべきだと思う
0873デフォルトの名無しさん
2010/01/10(日) 23:29:57一体どういう結果を期待してるんだ?
N次元配列がどういうものか根本的に誤解してるとしか思えん。
0874デフォルトの名無しさん
2010/01/10(日) 23:35:16そういう場合は,行を表すクラスを作ってそのオブジェクトの配列として扱う
0875デフォルトの名無しさん
2010/01/11(月) 00:31:520876デフォルトの名無しさん
2010/01/11(月) 00:35:32俺は質問者ではないが、ちょっと確認させてくれ。
> 配列の配列を使いましょう
これは具体的にどういうことでしょうか?
私は「構造体の配列」だと思うのですが。
0877デフォルトの名無しさん
2010/01/11(月) 00:41:460878デフォルトの名無しさん
2010/01/11(月) 00:44:52「配列の配列」は文字通り「配列の配列」だよ。
dim hoge as Integer()()
例えばこれはIntegerの配列の配列、つまりInterger()の配列。
それからソートするのなら値型より参照型の方がいい。
0879871
2010/01/11(月) 01:10:252次元配列の並べ替えで検索してもあまりそれらしいものが出てこなくておかしいなと思ってたんです。
配列の配列という方法だと思うのですが、Dim ar()() As String の宣言を使う方法で調べてみたら
説明してくれてるページが見つかったのでそれでやってみたいと思います。
ありがとうございました。
0880デフォルトの名無しさん
2010/01/11(月) 15:11:32どう考えても構造体かクラスの配列にすべきなのに
次善の方法としてはDataTableもありかとは思うが
プログラミングの勉強は、コーディングテクニックだけじゃなくて
設計もいっしょに勉強した方がいいぞ
0881デフォルトの名無しさん
2010/01/11(月) 15:22:150882デフォルトの名無しさん
2010/01/11(月) 15:58:41コーディングテクニックない人乙
0883デフォルトの名無しさん
2010/01/11(月) 19:10:57配列を準備してそれを操作なんていうプログラミングをしているのは
ナンセンスだと思うけどな。
既存のクラスを活用して、もしくは、クラスや構造体を作って行うのが
本来の方向では?
0884デフォルトの名無しさん
2010/01/11(月) 20:00:350885デフォルトの名無しさん
2010/01/12(火) 01:24:120886デフォルトの名無しさん
2010/01/12(火) 09:51:02どうせそのうちこのやり方では難しい時が来たら自然と気がつくだろ
0887デフォルトの名無しさん
2010/01/12(火) 15:05:560888デフォルトの名無しさん
2010/01/12(火) 18:11:54Dim ResultArr As New ArrayList
Dim Result(9) As String
Dim c As Integer = 0
ResultArr = GetArrList("hogehoge")
For Each Result In ResultArr
Console.WriteLine(Result(c))
c += 1
Next
End Sub
Function GetArrList(ByVal str As String) As ArrayList
Dim Result(10) As String
Dim Ret As New ArrayList
For i As Integer = 0 To 9
For i2 As Integer = 0 To 10
Result(i) = i2 & " - " & i
Next
Ret.Add(Result)
Next
Return Ret
End Function
上のコードで結果を表示すると10 - 0から10 - 9までしか出ないのですが、
0 - 0から9 - 9まで出るようしたいです。
どこが間違ってるか教えていただけないでしょうか。
0889デフォルトの名無しさん
2010/01/12(火) 18:24:34何がしたいのかが分からない。
配列のリストが欲しいのか、
単に "1-3" といった文字列のリストがあればいいのか。
0890デフォルトの名無しさん
2010/01/12(火) 18:30:210-1
0-2
:
:
:
10-0
10-1
10-2
10-3
:
10-9
配列の中の数字を全部表示したいです。
Button1_ClickのFor Eachを下記のように書き直しましたが
配列の最後のものしか出てこないです。(10 - 0 〜 10 - 9 の繰り返しが10回出ます)
For Each Result In ResultArr
For i As Integer = 0 To 9
Console.WriteLine(Result(i))
Next
Next
0891デフォルトの名無しさん
2010/01/12(火) 18:39:03Dim ResultArr As New List(Of String)
For i2 As Integer = 0 To 10
For i As Integer = 0 To 9
ResultArr.Add(i2 & " - " & i)
Next
Next
For Each Result In ResultArr
Console.WriteLine(Result)
Next
0892デフォルトの名無しさん
2010/01/12(火) 18:45:18説明が悪くてすみません。
一覧を表示したいだけではなくて、0-(0-10)、、1-(0-10)という親番号ごとには
配列に格納したいです。
その配列を格納したArrayListから読み出したいです。
0893デフォルトの名無しさん
2010/01/12(火) 19:05:24VBの配列が.NETでは参照型になったにもかかわらず、
記述上は値型のように見えるのが誤解の元だな。
For i2 As Integer = 0 To 10
Dim Result(9) As String ' この位置に注意。
For i As Integer = 0 To 9
Result(i) = i2 & " - " & i
Next
Ret.Add(Result)
Next
0894デフォルトの名無しさん
2010/01/12(火) 19:25:35できました。値型、参照型でこのようなのに出くわしたのが始めてだったので勉強になりました。
0895デフォルトの名無しさん
2010/01/12(火) 19:45:51FontChangedイベントハンドラ
OnFontChangedメソッドのオーバーライド
Fontプロパティのオーバーライド
これらのコードのどれか一つを書くとMe.Fontプロパティにイタリック体や太字などの
スタイルや、取り消し線や下線などの文字飾りが設定できなくなります。
(Me.Font = Dlg1.Fontなどで設定してもスタイルと文字飾りが設定されない)
(上記のコードを削除すると設定できるようになります)
どうすればこの状況を回避できますか?
0896デフォルトの名無しさん
2010/01/12(火) 19:55:230897デフォルトの名無しさん
2010/01/12(火) 19:57:19自己解決しました
自分で書いたコードの所為でした
(他のイベントハンドラに書いたコードが原因でした)
スレ汚し大変失礼しました。
0898デフォルトの名無しさん
2010/01/12(火) 20:19:15いや、まず値型か参照型か以前の問題があるだろ
そっち突っ込んでやれよ
元のコードの直接のバグは
For i As Integer = 0 To 9
For i2 As Integer = 0 To 10
Result(i2) = i2 & " - " & i
Next
Ret.Add(Result)
Next
だったんじゃないか
で、行と列が入れ替わってるだとかの問題を修正して
それでも思い通り動かなくて参照型の問題になるんだが
>>894
参照型うんぬん以前の問題があるのは理解できてるか?
もとのコードだと、すべての変数が値型だったとしても正常に動いてないぞ
0899894
2010/01/12(火) 20:34:07表示のところのi2 - i の並びを逆にしたりしているうちに
気付かないうちに正しくなっていましたが最初のはおかしかったですね
0900デフォルトの名無しさん
2010/01/12(火) 20:55:48' VB6
Dim i As Integer, j As Integer
For i = 0 To 9
Dim t(9) As Integer
t(i) = i
For j = 0 To 9: Debug.Print t(j);: Next: Debug.Print
Next
' VB.NET
Dim i, j As Integer
For i = 0 To 9
Dim t(9) As Integer
t(i) = i
For j = 0 To 9: Console.Write(t(j)): Next: Console.WriteLine()
Next
0901835
2010/01/12(火) 23:37:50みたところ、サードパーティの帳票ツールを購入する予算もないので
VB2005Proに入っている帳票ツールを使うように言われてしまいました。
そこであらためて相談です。VB2005Proのみを使用してシステムを
作り上げる場合、帳票は「Report」と「CrystalReport」
はたまた「PrintDocument」のどれがいいのでしょうか?
ざっと見たところ、CrystalReport(.rpt)はある程度の自由度のある
帳票が作れそうですが、Report(.rdlc)はPDFにも出力できるようです。
よって甲乙付けがたいように思えるのですが、実はPrintDocumentが
一番オススメだったりするのでしょうか?
と同時にそれぞれの一長一短をご教示いただければ幸いです。
当方の会社はソフト開発とは無縁の会社です。
今回「発注入荷の管理システム」を自社で作ることになり、
(理由はソフト会社へ依頼する予算がないからだそうです)
Access.adpをチョロっといじくっていた私にお鉢が回ってきたのです。
では何故、Accessで作らないのかと申しますと、上司が
「長く使えるシステムを作るのならAccessよりVB」と何処からか
聞いてきたらしく、問答無用でVBで作ることになったのです。
(なぜか上司が持ってきたのは2008ではなく、2005でした。)
ですので現在、参考書を片手に奮闘中です。
どうかご教示の程、よろしくお願い申し上げます。
0902デフォルトの名無しさん
2010/01/12(火) 23:43:23i=i+1
RichTextBox.Text &= i & vbcrlf
Next
1づつ増えない助けて
0903デフォルトの名無しさん
2010/01/12(火) 23:44:15まあアクセスだと壊れるからねぇw
0904デフォルトの名無しさん
2010/01/12(火) 23:45:03for-nextの意味分かってる?
0905デフォルトの名無しさん
2010/01/12(火) 23:46:39そりゃPrintDocument使えば何でもできるけどちゃんとやろうと思ったら
システム本体の作成よりもそっちの方に遥かに時間かかるよ
0906デフォルトの名無しさん
2010/01/12(火) 23:49:56複雑なことをやりたいなら、PrintDocumentでごりごりやるか、もしくはExcelってのもあり。
0907デフォルトの名無しさん
2010/01/12(火) 23:57:160908デフォルトの名無しさん
2010/01/13(水) 03:27:28wwwwwwwwwwwwwwwww
0909デフォルトの名無しさん
2010/01/13(水) 07:49:54forを書く時は、stepを書くように心がけよう
0910デフォルトの名無しさん
2010/01/13(水) 07:53:27そっちも参考にすると良いと思うよ。
0911デフォルトの名無しさん
2010/01/13(水) 07:57:33> 「長く使えるシステムを作るのならAccessよりVB」
何を根拠に言っているのか分からないが、インターネットから切り離した
ネットワークで、WindowsUpdate等を行わせなくて、別なソフトを勝手に
インスコしないという状況だと、長く安定したシステムが構築出来る。
AccessとかVBなどは関係が無い。
複数同時アクセスが多い状況であれば、Accessの方がファイルが壊れる
などのトラブルがおきやすいというのはあるが。
(VBでもネットワーク障害などのエラーでデータの再入力の手間は必ず
発生する。)
0912デフォルトの名無しさん
2010/01/13(水) 08:20:15「コンストラクター」って?
0913デフォルトの名無しさん
2010/01/13(水) 09:25:56すべてのクラスの基本型
コンストラクター
クラスのインスタンス作成したときに勝手に呼び出されちゃうへんなサブルーチン
0914デフォルトの名無しさん
2010/01/13(水) 10:10:00初心者が無理にVBで作ってAccessで作ったものより信頼性のあるものが作れるわけないだろ
0915デフォルトの名無しさん
2010/01/13(水) 10:17:490916デフォルトの名無しさん
2010/01/13(水) 10:32:53対象の男
コンストラクタ
後の処女膜貫通儀式
0917デフォルトの名無しさん
2010/01/13(水) 14:08:06Past&OK
にしたいのに
&をかくとへんになっちゃうからふつうに
Past&OK
というボタンテキストにしたいどうすれば
0918デフォルトの名無しさん
2010/01/13(水) 14:15:150919デフォルトの名無しさん
2010/01/13(水) 14:15:460920デフォルトの名無しさん
2010/01/13(水) 14:25:070921デフォルトの名無しさん
2010/01/13(水) 14:43:470922デフォルトの名無しさん
2010/01/13(水) 14:48:32If Button1.BackColor = Color.Black Then
だとエラーになってしまいます
どうすればいいんでしょうか?
よろしくお願いします
0923デフォルトの名無しさん
2010/01/13(水) 14:52:460924922
2010/01/13(水) 14:58:39System.Drawing.Colorでは演算子(=)は使えないと言うエラーだったと思います
エラーになったのは書いた時に出るエラーメッセージです
言い忘れてましたが環境は2003です
0925デフォルトの名無しさん
2010/01/13(水) 15:01:30If Button1.BackColor Is Color.Black Then
で
0926デフォルトの名無しさん
2010/01/13(水) 15:03:330927デフォルトの名無しさん
2010/01/13(水) 15:04:42If Button1.BackColor.ToArgb = Color.Red.ToArgb Then
だ
0928922
2010/01/13(水) 15:08:08'Is' 演算子は型 'System.Drawing.Color' のオペランドを受け付けません。オペランドは参照型または Null 許容型でなければなりません。 C:\Documents and Settings\ryu\Local Settings\Application Data\Temporary Projects\WindowsApplication1\Form1.vb
と言うエラーが出て行けませんでした
>>926
2003ではエラーになりました
今手元に2003が無いので詳しく確認出来なくて申し訳ない
>>927
2008で行けました!
ありがとうございます
これでやって行きたいと思います
回答下さった皆様ありがとうございました
0929デフォルトの名無しさん
2010/01/13(水) 15:09:590930デフォルトの名無しさん
2010/01/13(水) 15:11:210932デフォルトの名無しさん
2010/01/13(水) 15:50:45.NET1.1にはop_Exualityが無いのかと思ったがしっかりあった。
それでC#では==で大丈夫だった。昔のVBは難儀だったんだね。
普通はEqualsを使うのだがBoxingがないだけ.ToArgbのほうが速いかもしれない。
If Color.Equals(Button1.BackColor, Color.Black) Then
0933デフォルトの名無しさん
2010/01/13(水) 16:47:48そっちのがいいな
0934デフォルトの名無しさん
2010/01/13(水) 16:53:19問題が摩り替わってないか?
VBがいいかAccessがいいかを>>901は聞いているんじゃないだろ。
VBを使わざる得ない状況にあって帳票はどれがいいかを聞いているんだろ。
俺はAccessが使えているのであれば、作り方は違うが
CrystalReportだと、Accessのレポート近い雰囲気の物を作れると思うぞ。
PrintDocumentは >>905 や >>906 が言うようにプログラムを
ごりごりと書かなければならないから、君にはちとつらいと思うぞ。
0935デフォルトの名無しさん
2010/01/13(水) 17:42:340936デフォルトの名無しさん
2010/01/13(水) 18:37:370937デフォルトの名無しさん
2010/01/13(水) 20:34:55タスクマネージャー上でイメージ名の一覧から中々消えないのですが
すぐに完全に終了にするようにするにはどのように書けばよいですか?
0938デフォルトの名無しさん
2010/01/13(水) 20:47:51または、ループ内で頻繁にDoEventsをcallする。
0939デフォルトの名無しさん
2010/01/13(水) 22:03:58をインストールしました。
新規のフォームアプリケーションを開いて実行してもすぐに実行が終わってしまいます。
なぜでしょうか?
あまりにも初歩的な質問ですみませんが、本気でわからないです。
ウインドウズアップデートで最新状態にもしました。
他のPCでは、インストールするだけで、普通に使えるようです。
よろしくお願いします。
0940デフォルトの名無しさん
2010/01/13(水) 22:32:52質問の仕方が初歩的な点、および本気でわからない点にも同意しておこう。
せめてステップ実行して、どこで終了してるかくらい調べたら?
0941939
2010/01/13(水) 22:52:44普通なら、実行すると、なにもないフォームが表示されると思います。
ところが、実行すると何も表示せずに、終わってしまいます。
インストールがうまくいっていないようです。
VB2008のインストール以外にも必要なことがあるのでしょうか?
0942デフォルトの名無しさん
2010/01/13(水) 22:54:400943デフォルトの名無しさん
2010/01/13(水) 23:02:57Application.Exit()
0944デフォルトの名無しさん
2010/01/13(水) 23:13:340945デフォルトの名無しさん
2010/01/13(水) 23:26:270946デフォルトの名無しさん
2010/01/13(水) 23:31:56の下のほうに注意書きがある。
>Visual Studio 2008 Express Edition with SP1 インストール時の注意
SPなしとSP1がチャンポンになってるとかないの?
0947939
2010/01/14(木) 00:06:15よくわからないものを、いろいろアンインストールして、もう一度入れなおしてみます。
ありがとうございました。
0948デフォルトの名無しさん
2010/01/14(木) 01:15:560949デフォルトの名無しさん
2010/01/14(木) 03:50:40モーダルにしたいんだけど、いい方法ないですか?
0950デフォルトの名無しさん
2010/01/14(木) 04:03:54ない。自分で作って ShowDialog() しる。
0951950
2010/01/14(木) 04:05:28orz
0952デフォルトの名無しさん
2010/01/14(木) 13:43:04AccessよりもVBという考えは間違いでもあるので、そのあたりの情報を収集し、
上司を説得する方法も考えた方がいいと思う。
VB.NETに関係する部分はこのスレで引き続き質問出来るわけだし。
0953デフォルトの名無しさん
2010/01/14(木) 13:52:410954デフォルトの名無しさん
2010/01/14(木) 15:21:00キミがリストラされた会社ってブラックリストに有るんだ。
0955デフォルトの名無しさん
2010/01/14(木) 15:35:59<sample>
<test>test</test>
<testlist>
<factor>
<factor1>100</factor1>
<factor2>1</factor2>
</factor>
</testlist>
</sample>
</samplelist>
上記のようなXMLをDOMとXPathで読み出したいと思っています
(<sample>、<factor>要素は実際は複数存在します)
<sample></sample>の中のデータをsampleクラスのインスタンスに
それぞれ落とし込んで管理しています。
XMLnodelistにSelectNodesでそれぞれの要素のリストをつくって
取り出せないことはないのですが、データの抜き方が気持ち悪いです
[samlpelist]-[1番目のsample]-以下それぞれの要素に処理
というような処理は可能でしょうか
0956デフォルトの名無しさん
2010/01/14(木) 16:25:02selectNodes(".//*")
0957デフォルトの名無しさん
2010/01/14(木) 16:33:330958デフォルトの名無しさん
2010/01/14(木) 18:53:07悲惨な出来になるのは間違いないから
0959デフォルトの名無しさん
2010/01/14(木) 18:55:22なぜならその上司はこの記事を読んでいるから
http://itpro.nikkeibp.co.jp/article/COLUMN/20081202/320537/
0960デフォルトの名無しさん
2010/01/14(木) 20:09:46XPathについての知識が全然足りないということが分かりましたので
ロケーションパスをしっかり把握できるぐらいまで学習します
ありがとうございました
0961デフォルトの名無しさん
2010/01/14(木) 20:12:250963デフォルトの名無しさん
2010/01/14(木) 23:10:22レスどうもです。スレッドでやってみようと思います。
0964デフォルトの名無しさん
2010/01/15(金) 02:08:50Color構造体って
TextBox1.BackColor =
まで書いた時に列挙体のように候補が出てくるんですが、
これを自作構造体でやるにはどうすればいいですか?
0965デフォルトの名無しさん
2010/01/15(金) 02:23:12ただスレッドを使ってみたいだけだろw
0966デフォルトの名無しさん
2010/01/15(金) 02:28:03Sharedで自分自身の型のプロパティを書く
Color構造体のメンバ一覧をまず見れ
0967デフォルトの名無しさん
2010/01/15(金) 05:59:05点線を無くし、ただの黒いボタンにするにはどうするのでしょうか?
0968デフォルトの名無しさん
2010/01/15(金) 07:38:33それ、オブジェクトを選択したときの表記の点線じゃないの?
0969デフォルトの名無しさん
2010/01/15(金) 07:41:42・・・!
どうもそれみたいでした
消す事って出来ないのでしょうか?
0970デフォルトの名無しさん
2010/01/15(金) 08:04:54ボタンじゃなくピクチャーボックスとかラベルにすればいいんじゃない?
0971デフォルトの名無しさん
2010/01/15(金) 08:09:11ボタンでやりたかったのですが無理っぽいですかー
諦めてこのままやります!
ありがとうございました
0972デフォルトの名無しさん
2010/01/15(金) 08:17:22この独自クラスでは、コンストラクタあたりでSetStyleメソッドを呼び出して、
スタイルからControlStyles.Selectableを外せば、選択できないボタンになり、
結果として点線の枠線はでなくなります。
だそうだ
0973デフォルトの名無しさん
2010/01/15(金) 08:22:06Public Class Class1
Inherits Button
Sub New()
Me.SetStyle(ControlStyles.Selectable, False)
End Sub
End Class
0974デフォルトの名無しさん
2010/01/15(金) 09:33:400975デフォルトの名無しさん
2010/01/15(金) 10:36:290976デフォルトの名無しさん
2010/01/15(金) 17:00:12メンバの一覧に出てこないヘッダー(サイトの固有?)はどうやって設定したら良いでしょうか?
0977デフォルトの名無しさん
2010/01/15(金) 17:03:410978デフォルトの名無しさん
2010/01/15(金) 23:08:36ありがとうございます。できました。
webreq.Headers.Add("Host: www.hogehoge.com")
webreq.Headers.Add("Proxy-Connection: Keep-Alive")
この二つの設定が通らないのですが、どうやって設定すれば良いでしょうか?
0979デフォルトの名無しさん
2010/01/16(土) 00:16:30Proxy-ConnectionはProxy設定してKeepAlive=Trueで
0980964
2010/01/16(土) 00:30:26すみません、質問がわかりにくかったかもしれません。
= を書いた時点でインテリセンスを働かせて候補を出したいという意味です。
Private _myBackColor As MyColor
Public Property MyBackColor() As MyColor
Get
Return _myBackColor
End Get
Set(ByVal value As MyColor)
_myBackColor = value
End Set
End Property
Public Enum KnownColor As Integer
Red = 1
End Enum
Public Structure MyColor
Public Sub New(ByVal knownColor As KnownColor)
Me.value = CShort(knownColor)
End Sub
Private ReadOnly value As Short
Public Shared ReadOnly Property Red() As MyColor
Get
Return New MyColor(KnownColor.Red)
End Get
End Property
End Structure
を記述して、Me.MyBackColor = まで打ってみましたが
Color構造体のように候補はでませんでした。わかる方いましたらお願いします。
0981デフォルトの名無しさん
2010/01/16(土) 00:57:23Visual Studio ユーザーだな。
マニュアル嫁。
0982デフォルトの名無しさん
2010/01/16(土) 01:33:42んー、確かにColorのStatic Readonlyプロパティがインテリセンスに入力候補として
いきなり出てくるのは不思議。
何かそういうことが可能になる属性でもあるかと思って調べてみたが、
今のところ見つからない。
さっき気付いたけど、これVBのみでC#はない機能のようだから、
ひょっとするとVB専用にIDEレベルでColorを特別扱いするように実装されてるのかも。
>>981
980はそうおかしなことは言ってないぞ。
何がマニュアル嫁だ馬鹿かw
0983デフォルトの名無しさん
2010/01/16(土) 02:07:07ありがとうございます。解決です。
0984デフォルトの名無しさん
2010/01/16(土) 02:29:07コンボボックスで初めから選択肢のうちのひとつを選択させておきたい
(要するに標準の選択肢を用意したい)のですが、
プロパティの中にもそのような項目はありませんでした
どうすればよいでしょうか。
当方visual basic 2008 express editionをつかっています。
0985デフォルトの名無しさん
2010/01/16(土) 02:44:07初心者にジョブチェンジしてから来て下さい。
0986デフォルトの名無しさん
2010/01/16(土) 02:46:21最初にIDとパスワードを使ってログインしなければならないのですが、
IDとパスワードをPOSTするアドレスがhttpsのため、普通の方法では駄目なようなのですが、
対処方法を教えて頂きたいです。
0987デフォルトの名無しさん
2010/01/16(土) 02:46:480988デフォルトの名無しさん
2010/01/16(土) 02:51:04ん?httpsでも何も変わらんと思うが、普通の方法ってどんな方法?
0989デフォルトの名無しさん
2010/01/16(土) 03:24:59レスありがとうございます。
どぼんさんのところのサンプルで試しています。↓
ttp://dobon.net/vb/dotnet/internet/usecookie.html
違うサイトで試してみたのですがhttpsでもログインできました。
ずっとこれが原因だと思ってたのですが違ったのですね・・・
何か必要なキーの設定が抜けているのかな?
0990980
2010/01/16(土) 03:37:25>VB専用にIDEレベルでColorを特別扱いするように実装されてるのかも。
C#で出ないならその可能性が高そうですね。
構造体でのインテリセンスは諦めることにしました。
ありがとうございました。
0991デフォルトの名無しさん
2010/01/17(日) 00:41:50ワンキーでForm1のウインドウをアクティブにしたいんですけど
どうすればいいですか?
0992デフォルトの名無しさん
2010/01/17(日) 00:51:520993デフォルトの名無しさん
2010/01/17(日) 00:57:440994デフォルトの名無しさん
2010/01/17(日) 06:50:43Windowsツールを使ったことあるならホットキーくらいは知ってそうなもんだろう
0995デフォルトの名無しさん
2010/01/17(日) 18:42:08C#のほうはVS2008であったけどVBにはなかったい自動実装プロパティいれたり・・・
C#でテストしてからVB作ってるのかな
0996デフォルトの名無しさん
2010/01/17(日) 18:53:490997デフォルトの名無しさん
2010/01/17(日) 22:37:58マイクロソフトが開発した言語なわけで、VBとはちょっと思想が違うんでしょ
だから、新しい機能とかはVBよりも選考してC#側で取り入れているんじゃないの
LINQの記述方法がfromからだったりするのもインテリセンスが影響しているとか
0998デフォルトの名無しさん
2010/01/18(月) 01:21:59SQL Server 2005 Express にネット経由で接続することは可能でしょうか?
一応、サーバーがある施設はダイナミックDNSの登録はしてありますが。
ConnectionString の DataSource に ドメイン名:ポート番号 を記述しても
うまく接続してくれません。
もし接続&データ取得が可能でしたら、どうかその方法をご教示下さい。
0999デフォルトの名無しさん
2010/01/18(月) 01:41:50すすめはしないがサーバーやサーバー側ルータの1433tcp/1434udpポートを空けとく
1000デフォルトの名無しさん
2010/01/18(月) 03:05:27ttp://pc12.2ch.net/test/read.cgi/tech/1263738929/l50
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。