VB.NET質問スレ(Part30)
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2009/05/17(日) 10:00:19VB.NET質問スレ(Part29)
http://pc12.2ch.net/test/read.cgi/tech/1235206416/l50
テンプレは>>2〜
0653646
2009/07/28(火) 00:10:18週末に試してみようと思います。
0654デフォルトの名無しさん
2009/07/28(火) 01:10:351.Windows ムービー メーカー を起動する
2.対象の画像を読み込む
3.ムービーの発行でDV-AVIを選んで実行
4.AVI動画が完成\(^o^)/
0655デフォルトの名無しさん
2009/07/28(火) 22:21:11コンボボックスのDataSourceにDataTableを入れたのですが、
中身が表示されません。
DisplayMemberとValueMemberプロパティにも項目名を設定しています。
セットした後に、SelectedValueとSelectedTextの値を見ると、
SelectedValueには値が入っていますが、SelectedTextには値がありません。
パッケージをコールすると、
表示する用の文字列と裏で持つ用の文字列を複数レコード取得します。
調べても、問題ないと思うのですが何が悪いのでしょうか?
combo1.DataSource = DataTable
combo1.ValueMember = "AAA"
combo1.DisplayMember = "BBB"
試しに、AAAとBBBを逆にセットしてみたのですが、やはりSelectedValueの方しか値が入っていません。
よろしくお願いします。
0656デフォルトの名無しさん
2009/07/28(火) 22:26:570657デフォルトの名無しさん
2009/07/28(火) 22:27:000658デフォルトの名無しさん
2009/07/28(火) 22:32:58DataTableには値がちゃんと入っています。
デバッグでも確認しましたし、DataGridViewに突っ込んで確認しています。
>>657
そこは調べ不足でした。SelectedItemで確認するのが正しいですね。
最悪、ループでAddしていくしかないですかね…
0659デフォルトの名無しさん
2009/07/28(火) 22:37:50DataTable の指定とかおかしそうな気がする。
0660デフォルトの名無しさん
2009/07/28(火) 22:43:14ソースが手元にないので、覚えている範囲で書きます。
Using ds As DataSet = (オラクルパッケージをFillメソッドで実行)
Using dt As DataTable = ds.Tables(0)
combo1.DataSource = dt ←このdtをDataGridViewに入れ、値が入っていることを確認
combo1.ValueMember = "AAA"
combo1.DisplayMember = "BBB"
End Using
End Using
こんな感じです。
0661デフォルトの名無しさん
2009/07/28(火) 22:48:350662デフォルトの名無しさん
2009/07/28(火) 23:31:00うわっ、すいません。初歩的な所で…
なぜ、DataGridViewは表示されたままだったのでしょうか?
0663デフォルトの名無しさん
2009/07/30(木) 11:41:38String.Format("合 計 {0,12:\\###,###,##0}", dTotal) → 合 計 -\9,000
String.Format("合 計 \{0,12:###,###,##0}", dTotal) → 合 計 \ -9,000
String.Format("合 計 {0,12:\\-###,###,##0}", dTotal) → 合 計 -\-9,000
dTotalがマイナスの場合は-1をかけて、
String.Format("合 計 {0,12:\\-###,###,##0}", dTotal)とすれば
合 計 \-9,000になるのですが、それ以外の方法で
表示させるにはどうしたらいいでしょうか?
0664デフォルトの名無しさん
2009/07/30(木) 11:45:45を使えば正負でそれぞれに書式指定できる
使い方はカスタム数値書式指定文字列のページ見れ
0665デフォルトの名無しさん
2009/07/30(木) 13:01:180666663
2009/07/30(木) 13:03:44おかげさまで出来ました!
もっと勉強します。
0667デフォルトの名無しさん
2009/07/30(木) 13:53:02できるのであれば方法を教えてください
Visual Studio 2005 Service Pack 1 セキュリティ更新プログラム(KB971090)
0668デフォルトの名無しさん
2009/07/30(木) 14:00:150669デフォルトの名無しさん
2009/07/30(木) 14:08:44それクソ時間かかるよな。SP1 のときも思ったけど。
0670デフォルトの名無しさん
2009/07/30(木) 14:51:40だから、DLしてもどっちみち時間かかる
0671デフォルトの名無しさん
2009/07/30(木) 17:10:06そうそう
だから手動でダウンロードしたいわけなのよ
0672デフォルトの名無しさん
2009/07/30(木) 17:25:13249MBワロタ
0673デフォルトの名無しさん
2009/07/30(木) 17:33:05なんか問題あったりするんでしょうか?
EXCELのオブジェクトを作成したスレッド以外から使ったりはしない前提です。
なんかイマイチこの辺を理解してないんです。
0674デフォルトの名無しさん
2009/07/30(木) 17:49:22ありがとうございます
0675デフォルトの名無しさん
2009/07/31(金) 01:33:17GridViewとDataTableをバインドすると普通は【A】という風に表示されると思うのですが、
グループが同じ場合には次の【B】の様に表示したいと思います。
どうすれば実現する事が出来るのでしょうか?
【A】
GROUP EMP_ID
________________________
A 1
A 2
B 3
B 4
【B】
GROUP EMP_ID
________________________
A 1 2
B 3 4
0676デフォルトの名無しさん
2009/07/31(金) 08:14:56GridViewのEMP_ID列をテンプレートフィールドとし、
その中に子Repeaterを配置する。
子Repeaterは親のGROUPを引数として
EMP_IDを返すようなメソッドとバインドする。
(引数の与え方としては一旦HiddenFieldに仕込むのが楽だろう)
ただし、この場合、GROUPごとにEMP_IDを取得するSQLが流れる。
GROUP数が多い場合は要注意。
俺ならEMP_GROUPクラスとEMPクラスを作って、
EMP_GROUPのListを返すメソッドを作成。
Repeaterにバインドさせる。
んで、ID列を返すメソッドとして以下のようなのを作ってお終い。
for each emp as EMP in EMP_GROUP
'デリミタでIDを結合
Next
Retuen 結合されたID文字列
0677デフォルトの名無しさん
2009/07/31(金) 08:59:46ありがとうございます。
試してみます。
0678デフォルトの名無しさん
2009/08/01(土) 01:28:50配布する予定だから他の人のがどこに置くのがわからないって前提です
0679デフォルトの名無しさん
2009/08/01(土) 01:32:01VB 的には、My.Application.Info.DirectoryPath から取ればいい。
0680デフォルトの名無しさん
2009/08/01(土) 01:47:19トン
1行ずつ読み込んで配列に入れたいんだけど配列の数って先に宣言しないとだめなのかな?
0681デフォルトの名無しさん
2009/08/01(土) 01:54:36配列そのものじゃなくていいならList(Of String)で十分
全行読み込むだけならFile.ReadAllLines一発
0682デフォルトの名無しさん
2009/08/01(土) 02:01:370683デフォルトの名無しさん
2009/08/01(土) 02:03:17後で配列に入ってる個数を取り出したいんだ
0684デフォルトの名無しさん
2009/08/01(土) 02:04:49それぐらい配列じゃないコレクションでもできる
というか配列じゃないとダメなんてのは配列を引数に要求するメソッドがあるときぐらいだ
0685デフォルトの名無しさん
2009/08/01(土) 02:06:13そうだった
みんなありがとう!
これで完成できるよ
0686デフォルトの名無しさん
2009/08/01(土) 11:21:20流れは最初にtokenを取得して
次にtokenとusernameとpasswordを添えてPOSTしているのですが
認証されていないようです
ソースをうpしましたので、お暇な方は何が原因なのか教えて頂けないでしょうか?
http://pai.no.land.to/up/src/dgz14115.zip
(twitterのテストアカウント設定済です)
0687デフォルトの名無しさん
2009/08/01(土) 12:29:35成功する方法とお前さんの方法で、それぞれ Wireshark とかで
やりとりを見てみて、違いを確認するのがいいよ。
0688686
2009/08/01(土) 17:13:32その当たりは大丈夫でした
他の言語ではいけたので
調べて見たらどうやらこれが原因みたい
http://agloo.blog92.fc2.com/blog-entry-40.html
解決方法はWebBrowserでやる
何だかスマートじゃない…
0689デフォルトの名無しさん
2009/08/01(土) 22:19:53ネットワークドライブの電源を手動で入れてプログラムでアクセスしようとすると
ドライブがないというエラーになってしまいます。
マイコンピュータ上にはすでにあるので、エクスプローラで一度ドライブ内を表示すると
その後はプログラムからもアクセスできるようになります。
最初からプログラムでアクセスできるような方法があったら教えて頂きたいです。
0690デフォルトの名無しさん
2009/08/01(土) 23:07:410691デフォルトの名無しさん
2009/08/01(土) 23:16:33認証のせいでは?
0692デフォルトの名無しさん
2009/08/01(土) 23:23:52セットアッププロジェクトで必須コンポーネントに.NetFramework
とCrystarReportsを選択してビルドを行いました。
出来たファイルの.NetFrameworkとCrystalReportsはわざわざ手動でインストール
が必要なのでしょうか?
セットアップ.exeに全て含める方法を教えてください。
0693デフォルトの名無しさん
2009/08/01(土) 23:38:33ttp://dobon.net/vb/dotnet/deployment/dotnetbootstrap.html
0694デフォルトの名無しさん
2009/08/01(土) 23:44:190695692
2009/08/01(土) 23:45:36setup.exe作ったんですが、CrystalReportsのランタイムが入ってないみたい
なんですよね。
出来たmsiファイルは消去してもいいんですか?
0696デフォルトの名無しさん
2009/08/01(土) 23:58:59msiは必要
0697692
2009/08/02(日) 00:25:00いろいろ調べたところマージモジュールっていうのが必要みたいなんですよね。
じゃあSetup.exe作る際に必須コンポーネントでチェック入れた
CrystalReporsは意味無いってことになりますよね・・・
よくわからないんです。もしそのへんわかる方いらしたら教えてください。
setup.exe走らせる際は各コンポーネントとmsiは一緒にしておかなきゃ
駄目ということですね。
0698692
2009/08/02(日) 00:51:40setup.exeと一緒に同梱されるCrystalReportsのランタイムを個別に
インストールしてみたら、管理者権限が無い為、インストールできない
というエラーが出ました。
管理者権限でログインしてないってだけみたいだったようです。
setup.exeでインストールを行ったときはエラーは表示されず、
インストール出来るコンポーネントのみインストールするんですね・・・
エラー出ないからてっきり必須コンポーネントはインストール出来てる
ものだと思いました。
0699デフォルトの名無しさん
2009/08/02(日) 01:07:580700692
2009/08/02(日) 01:58:10setup.exeでインストールできないコンポーネントが見つかった時点
でエラーを出してsetupを終了する方法はありますか?
0701デフォルトの名無しさん
2009/08/02(日) 12:36:520702デフォルトの名無しさん
2009/08/02(日) 13:37:35ありがとうございます。WNetAddConnection2でできました。
0703692
2009/08/02(日) 15:15:47管理者権限を確認するダイアログを表示させるんですね。
作ってみます。
0704デフォルトの名無しさん
2009/08/02(日) 15:27:23Orca の出番だね。
0705デフォルトの名無しさん
2009/08/02(日) 15:49:35正攻法かどうか分からないけど、
カスタム動作(System.Configuration.Install.Installerクラス)をつかっても
できそうだね。
0706デフォルトの名無しさん
2009/08/02(日) 19:40:18現在HTMLのFILE FILEDからファイルを選択し、
SaveAsメソッドを組み込んだ送信ボタンを押下することで
ローカルのHDDからWebサーバーにファイルをアップロードをする
システムを作っています。
このシステムから、FILE FILEDを使用せず、
送信ボタンを押すとダイアログボックスが開き
ファイルを選ぶ事でファイルを送信できるようにしたいのです。
以上のように1つのボタンで、ファイルの選択〜ファイルの送信まで
行うようにするには、どのようなメソッドを用いればいいのでしょうか。
0707デフォルトの名無しさん
2009/08/02(日) 19:42:31どうしても、っていうなら、セキュリティの設定を甘くして、クライアントスクリプトでやるか、
ActiveX コントロールを使うしかない。
0708デフォルトの名無しさん
2009/08/02(日) 19:48:220709デフォルトの名無しさん
2009/08/03(月) 23:57:470710デフォルトの名無しさん
2009/08/04(火) 00:00:200711デフォルトの名無しさん
2009/08/04(火) 00:05:43Splitterでは新しいペインを生成したり削除したりは出来ないようです。
0712デフォルトの名無しさん
2009/08/04(火) 10:29:55プログラムで作れない筈もなく。
0713デフォルトの名無しさん
2009/08/04(火) 14:21:16VB.netで新しいプロジェクトからWindowsコントロールライブラリでDLLを作って
アセンブリをCOM参照可能にするにもチェックを入れているのですが
VB6の参照設定でその.netで作成したDLLを参照しようとすると
「指定したファイルへの参照は登録できません」
とのメッセージが出て参照に追加することができません
VB.netでつくったコンポーネントってVB6でも使うって不可能なんですか?
0714デフォルトの名無しさん
2009/08/04(火) 14:58:11プロジェクトのプロパティでCOM相互運用機能の登録にもチェック
0715デフォルトの名無しさん
2009/08/04(火) 21:57:57で
t = Now
と
t = Now()
の違いは何ですか?
0716デフォルトの名無しさん
2009/08/04(火) 22:00:480717デフォルトの名無しさん
2009/08/04(火) 22:01:26t = DateTime.Now
と書いたほうがいい
0718デフォルトの名無しさん
2009/08/04(火) 22:02:260719デフォルトの名無しさん
2009/08/04(火) 22:05:230720デフォルトの名無しさん
2009/08/05(水) 11:30:45コピペで勝手に作れないんです…
0721デフォルトの名無しさん
2009/08/05(水) 13:03:42このスレになってからは初だっけ?
FAQだからググればヒットする。
0722デフォルトの名無しさん
2009/08/05(水) 14:55:460723デフォルトの名無しさん
2009/08/05(水) 16:07:350724デフォルトの名無しさん
2009/08/05(水) 19:03:01MSDN(オンライン)でコントロール配列を検索したら
http://msdn.microsoft.com/ja-jp/library/kxt4418a.aspx
とか出てくるんだがな
まず真っ先にチェックすべきはMSDNだろうJK
0725デフォルトの名無しさん
2009/08/05(水) 19:03:550726デフォルトの名無しさん
2009/08/06(木) 11:38:02Microsoft Visual Studio 2005
Office 2003、2007が入っています
Excel 2003 のファイルを操作したいと思い、参照設定で Object Library 11.0 を追加しましたが、
参照設定に追加された Excel.dll のパスをみると、アセンブリフォルダの 12.0 の dll を見にいってるようです
このままコンパイルして Office 2003 のみがインストールされているPCで実行すると、「12.0 が無いよ」と怒られます
Office 2003 のみが入っている開発PCでコンパイルすると、正常に実行でき、参照設定のパスも 11.0 を見にいっています
これを Office 2007 が入っているPCでコンパイルしても Office 2003 のみが入っているPCで実行できるようにしたいのですが、
��パスを固定にする�≠謔、な方法はあるのでしょうか?
0727デフォルトの名無しさん
2009/08/06(木) 12:39:08参照設定しないで遅延バインドで作る
0728デフォルトの名無しさん
2009/08/07(金) 08:15:41TabPage1と2があってComboBox1と2があり以下の様になっています
TabPage1にComboBox1
TabPage2にComboBox2
Private Sub Combo()を作り、その中でComboBox1.Items.Addをしているのですが、
ComboBox2の場合はComboBox2.Items.Addになってしまい面倒です
どうにか一つのPrivate Subで個別に出来ませんか?
よろしくお願いします
0729デフォルトの名無しさん
2009/08/07(金) 12:03:24引数の値によってComboBox1とVomboBox2のどちらに操作するのか分岐。
0730デフォルトの名無しさん
2009/08/07(金) 12:04:13引数の値によってComboBox1とComboBox2のどちらを操作するのか分岐。
0731デフォルトの名無しさん
2009/08/07(金) 12:40:10なるほど!
ありがとうございます
0732デフォルトの名無しさん
2009/08/07(金) 12:51:26引数を1の場合ComboBox1にしたい時はどうするんでしょうか?
0733デフォルトの名無しさん
2009/08/07(金) 13:10:22コンボボックス型の配列変数を宣言して、コンボボックスの1と2をそれに突っ込んで
配列の添え字に引数の値を設定して使えばいいじゃん
最近VB使ってない素人の即興の書き込みですまんけど、こんな感じでできると思う
0734デフォルトの名無しさん
2009/08/07(金) 13:12:39Private Sub Combo(ByRef cbo As ComboBox)
cbo.Items.Add 〜
End Sub
0735デフォルトの名無しさん
2009/08/07(金) 14:10:16X=X*1.2
X=X*1.3
Y=Y/2
Y=Y*3
X=X*Y
このような場合、変数に代入される毎の計算結果の値を少数切捨てにするには、
個別に関数を指定する以外にどのように書いたら良いでしょうか?
0736デフォルトの名無しさん
2009/08/07(金) 14:34:16X = X * 12 \ 10
X = X * 13 \ 10
Y = Y \ 2
Y = Y * 3
X = X * Y
1.2の掛け算とかは1.2が定数じゃなければ無理か
0737デフォルトの名無しさん
2009/08/07(金) 14:41:02既に望み通りだと思うんだけど
0738デフォルトの名無しさん
2009/08/07(金) 14:49:210739735
2009/08/07(金) 14:52:280740デフォルトの名無しさん
2009/08/07(金) 15:10:010741デフォルトの名無しさん
2009/08/07(金) 15:10:220742デフォルトの名無しさん
2009/08/07(金) 15:18:04テンプレにしたほうがいい
0743735
2009/08/07(金) 15:22:29うーんそれしか無いですかねぇ
>>735はあくまで例で、実際には変数を代入させる計算式が60行くらいあり
結果が少数になるもの全てに適用させるので他に方法ないかなと思ったんですが…
>>742
すいません、VB2008EEです
0744デフォルトの名無しさん
2009/08/07(金) 15:29:27せっかく.netは言語混ぜれるんだし
0745デフォルトの名無しさん
2009/08/07(金) 15:34:08Cだと整数型は少数切捨てですか?
0746デフォルトの名無しさん
2009/08/07(金) 15:40:55下手に楽しようとして訳わからん直し方しても後で困るだけ
0747デフォルトの名無しさん
2009/08/07(金) 15:44:17だね。
そもそも四捨五入という仕様がおかしいからね
0748デフォルトの名無しさん
2009/08/07(金) 15:51:260749デフォルトの名無しさん
2009/08/07(金) 15:53:37俺も
キーボードマクロ使えば楽にできる品
0750デフォルトの名無しさん
2009/08/07(金) 15:55:54うーんそうですね…むしろその方が楽でしょうしねぇ。
素直にFixで一つ一つやりたいと思います。
有難うございました。
0751デフォルトの名無しさん
2009/08/08(土) 01:39:15なんでByRef?
0752デフォルトの名無しさん
2009/08/08(土) 01:54:50■ このスレッドは過去ログ倉庫に格納されています