1 名前:デフォルトの名無しさん [2007/07/10(火) 12:23:42 ] 前スレ VB.NET質問スレ (Part21) pc11.2ch.net/test/read.cgi/tech/1177299756/ テンプレは2〜10くらいまでの間にある予定
552 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 12:44:13 ] そりゃmodeの音が「モード」だという思い込みを前提としているからそういう判断になる
553 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 12:44:21 ] こまかいなぁ
554 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 12:54:36 ] くだんね
555 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 12:59:05 ] modeの発音記号は[moud]で一番近い日本語表記はモードですぅ〜>< ってかくだらんことで意地張ってレス消費させるなw
556 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 12:59:42 ] >>555 オマエモナー
557 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 13:01:06 ] >>552 はi mode も アイモーダとか発音してるんだぜ(´ー`)
558 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 13:02:01 ] ↓下らん流れを変える、質問よろ。
559 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 13:04:17 ] まぁ表記がどっちだろうと構わないが、一般的なのはどっちなのか グーグル先生に聞いてみた。あとはご自由に。 モーダレス 1,470 件 モードレス 29,500 件
560 名前:デフォルトの名無しさん [2007/08/07(火) 13:52:39 ] 初心者です、2点わからないことがあるので教えてください。 1点目が、データグリッド内に指定した行数だけデータを表示させる方法。 2点目が、ページング機能のプログラムの書き方。 この二つの方法をご教授ください。
561 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 13:59:41 ] >>560 環境も書いてくれ。 VS2005とか。
562 名前:デフォルトの名無しさん [2007/08/07(火) 14:04:31 ] すいません 書き忘れです。 .net2003でmysql、odbc使ってます。
563 名前:531 mailto:sage [2007/08/07(火) 16:47:33 ] すまんが、>531にもなにかヒントちょうだい
564 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 18:34:12 ] >>563 答えが返ってこないのは、質問が漠然としているからでもあると思うよ。 君は読み手のESP能力を無意識に期待してるんだよ。 なぜ読み手の立場にたった文章が書けない? 例えばこのスレの標準的な読み手ならこう思うんじゃないか? ------------------------------------------------------------- 結局こやつは何がしたいのだ? パネルやラベルを任意の位置に表示すれば済むように感じるのだが、 それではダメなのだろうか? ダメだとしたら何故? というか、なぜこやつは読み手にエスパーであることを要求して平気なのだ? -------------------------------------------------------------
565 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 19:50:10 ] つか、「タスクが移動してしまい」の意味が解らん…
566 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 21:27:51 ] >>563 ShowInTaskbarをFalseにする。
567 名前:デフォルトの名無しさん [2007/08/07(火) 22:01:42 ] Form を画面の中央に配置する場合、最も普通に行う方法はどのようなものでしょう? VB6の時代には、Screenのサイズから割り出してTopとLeftを指定しました。 そうではなく、何か簡単な一発メソッドか何かで指定可能でしょうか。 また、画面が複数ある場合にも対応可能でしょうか。 なにとぞよろしくお願いします。
568 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 22:04:25 ] StartPosition
569 名前:567 [2007/08/07(火) 22:16:59 ] >>568 おお、助かります。やはりなんでも用意されているのですね!! ありがとうございました!!
570 名前:デフォルトの名無しさん mailto:sage [2007/08/07(火) 22:25:15 ] >>563 率直に言わせてもらう。 意味がわからん。
571 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 09:27:52 ] >>563 パネルとかを動的に生成して、任意の位置に最全面で表示させればええんじゃない? 試してないけど。
572 名前:デフォルトの名無しさん [2007/08/08(水) 12:02:16 ] >>560 SQL文で必要な行数を持ってこいとすれば解決するのでは? そうすればグリッドはただ表示するだけなんだし。
573 名前:デフォルトの名無しさん [2007/08/08(水) 13:34:45 ] すみません、ボタン・コントロールの ForeColor に教えてください。 このプロパティを標準以外に変更しようとしてBlueなどを代入してみたのですが 変更できませんでした。これは単純には変更できないとしますと、 何か別のプロパティを先に変更しておく必要があるでしょうか。 その場合何を変更しておけばよいでしょう?よろしくお願いします。
574 名前:573 [2007/08/08(水) 13:36:02 ] >>573 すみません間違えました。訂正します。 >ForeColor に教えてください -> ForeColor について教えてください
575 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 13:40:03 ] .ForeColor = Color.Blueで効くはずだけど? VisualStyleが腐ってるんじゃね?
576 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 13:57:44 ] >>573 FlatStyleプロパティがSystemになってるとForeColorの設定いじっても変わらない。
577 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 14:53:25 ] すみません、質問させて下さい。 DataGridViewにて、CellPaintingイベントで、セルの中身を自分で描画しようと思ったのですが、 Dim rect As New Rectangle(e.ClipBounds.X, e.CellBounds.Y, e.CellBounds.Width / 2, e.CellBounds.Height) e.Paint(rect, DataGridViewPaintParts.Background + DataGridViewPaintParts.Border) e.Handled = True イベント内に以上のように書いた場合、セルの左半分だけ背景とボーダーが描画されると思ったのですが、 実際実行してみたところ、セル全体に背景とボーダーが描画されてしまいました。 rectを(1,1,1,1)なんて指定してみたところで、関係なくセルの全体が描画されているようでした。 これってrectで範囲指定ができないバグなんでしょうか? それとも自分の書き方が間違ってるんですかね?
578 名前:デフォルトの名無しさん [2007/08/08(水) 16:18:26 ] >>576 FlatStyle プロパティを System にしていました。>< むかし VB6 のときは、GraphicStyle だとかにすると色関係が 帰られたかと思いましたが、VB.NETではどうやっても無理ということ なのでしょうか? >>575 VisualStyle はググッたのですが、もしかすると WinXpの ということでしょうか。
579 名前:デフォルトの名無しさん [2007/08/08(水) 16:22:11 ] >>578 FlatStyle プロパティを System にしていましたのは、 Flat ですと見た目のインパクトが弱いためで、 その形が使いからでした・・・
580 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 16:26:56 ] >>579 Standardじゃだめ?
581 名前:デフォルトの名無しさん [2007/08/08(水) 16:59:37 ] >>580 なるほどー。 ただやってみたのですが、BackColor が System のときと同じように、立体的なテキスタイルになる とうれしいのですが、可能でしょうか?
582 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 17:54:41 ] 自分の環境だとStandardとSystemの外観がまったく一緒なんだが、違うのかな…?
583 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 18:18:15 ] >>582 そうなのでした、これはもしかしたら、WinXPの設定なのですかね・・・。
584 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 18:19:37 ] 質問者はOSとIDEの環境くらい書いておくれ。
585 名前:デフォルトの名無しさん [2007/08/08(水) 20:03:51 ] >>584 すみません、OS は WindowsXp で、IDE は VS2005Pro でした。 そういえば、Xp は >>575 さんの VisualStyle がありました、 これで変更してるから表示が変わるのですね。
586 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 23:32:38 ] Delegate ステートメント ttp://msdn2.microsoft.com/ja-jp/library/twsk0311(VS.80).aspx Delegateについて勉強中なのですが教えてください。VB2005EEです。 上記の使用例で書かれているコードについてなのですが Delegateがどのように役立っているかが全くわかりません。 Protected Sub Test() AddNumbers(5, 3) SubtractNumbers(9, 3) End Sub と書いたほうが良い様に思うのですが。
587 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 23:34:27 ] @ITのデリゲート入門でも読めば? あんまりいい記事じゃないけど、デリゲートの存在意義は馬鹿じゃなきゃ理解できるはず
588 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 23:36:25 ] お前はいまとどめをさしてしまった…
589 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 23:37:49 ] イベントとか コレクションのSortとか
590 名前:586 mailto:sage [2007/08/09(木) 01:09:19 ] >>587 ,>>589 回答ありがとうございます。何となくわかった気がします。
591 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 11:30:48 ] Windowsアプリで質問です。 ユーザーコントロールを作成し中にLabelとPictureBoxを配置しました。 このユーザーコントロールを貼り付けたフォームで、このユーザーコントロールのMouseHoverイベントを 使用したいのですがLabelとPictureBox以外の領域でしかMouseHoverイベントが発生しません。 このユーザーコントロール中(LabelとPictureBoxとそれ以外の領域全て)でMouseHoverイベントを 発生させるにはどのようにすれば良いでしょうか。
592 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 11:44:20 ] Private Sub UserControl1_MouseHover() Private Sub Label1_MouseHover() Private Sub PictureBox1_MouseHover() でいいんじゃね?(未確認)
593 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 12:27:15 ] >>591 しばらく前にほとんど同じ質問があったなあ。 過去ログ見れば参考になるサンプルコードが見つかるはず。(確か俺が書いた) まあ要は、自分の内部コントロールのイベントを拾って、 あたかも自分のイベントのように偽装(っていってもOnXXXX呼ぶだけ)すればいいだけだよ
594 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 12:30:23 ] >>592 解答ありがとうございます。 その記述をフォーム側に書くと言うことはLabelとPictureBoxをパブリックなプロパティにするということですね。 この場合、ユーザーコントロール内のマウスの位置によって3種類のMouseHoverイベントが起こるのが ちょっとまずいです。 ユーザーコントロール内でマウスを動かしているだけで何度もイベントが発生するからです。 イメージとしてはユーザーコントロールと同じ大きさの透明のコントロールを最前面に配置して その透明のコントロールのMouseHoverイベントを使用したい感じです。
595 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 12:32:23 ] >>593 ありがとうございます。 過去ログを探してみます。 よろしければ検索のためのキーワードみたいなものを教えてもらえないでしょうか。
596 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 12:41:55 ] >>593 内部のイベントを全て自作のイベント(MouseHoverExみたいな)にまとめて外部に公開するってことですかね。 そうするとやっぱりそのコントロール内でそれぞれのコントロールにマウスを合わせる度に同じイベントが発生 してしまいます。 Clickイベントなどはこの方法で実装しています。
597 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 12:42:35 ] >>595 一個前のスレの363以降だね。 っていうか、593のヒントから自分でゼロから考えた方が楽しいぞ
598 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 12:43:31 ] >>594 じゃあさ、MouseHoverイベントを使って 何をやりたいのかも書いておいたほうが回答もらいやすいぞ。 君がこれだ!って思う方法が可能とは限らないんだから。
599 名前:デフォルトの名無しさん mailto:sage [2007/08/09(木) 12:57:13 ] >>598 やりたいことはメニュー型のランチャーのサブメニュー項目のようなコントロールです。 使ってない人にはさっぱりかもしれませんがメニュー型ランチャーのOrchisでいう サブメニューのような感じです。 画像とテキストを含んだユーザーコントロールにMouseHoverすると新しいFormを Showすると言うような動きがしたいです。 >>597 了解です。 しばらくちゃんと自分で考えてみます。
600 名前:デフォルトの名無しさん mailto:sage [2007/08/10(金) 18:19:38 ] vb2003でGraphicsオブジェクトを使用して画像を合成しています。 単純に合成はできるのですが、乗算で合成したいなぁ、と思って Graphics.MultiplyTransformなるメソッドを使用してみたのですが 乗算になっているようには見えません。 Photoshopでレイヤーを乗算にして描画される、あのイメージだったんですが このメソッドで良かったのでしょうか? g.DrawImage(imgA, rect) Dim transformMatrix AS New System.Drawing.Drawing2D.Matrix transformMatrix.Translate(1.0F, 1.0F) g.MultiplyTransform(transformMatrix, System.Drawing.Drawing2D.MatrixOrder.Append) g.DrawImage(imgB, rect) こんな感じでやってます。
601 名前:デフォルトの名無しさん mailto:sage [2007/08/10(金) 19:35:40 ] ドキュメント読めばわかるが、MultiplyTransformはワールド変換のためのメソッド。 つまり座標変換。 System.Drawing.Graphicsというかその基になってるGDI+には色合成処理は用意されてない。 アルファブレンドはできるけど。 ので頑張って自前で実装するしかない。探せば見つかるかもしれないけど。 ttp://blog.livedoor.jp/junki560/archives/23254191.html DelphiのコードだけどGDI+の乗算カラーフィルタのサンプルを見つけた。 参考になるかもしれない。 // そういえばPaint.NETは今どうなってんだろ。
602 名前:デフォルトの名無しさん mailto:sage [2007/08/10(金) 19:42:26 ] そりは変換行列の「積」なんでは?w レタッチソフトの「乗算」の処理内容を具体的に知らないので抽象的なアドバイスになって 申し訳ないけど、たぶんカラー行列を使うんじゃないかな?(DrawImageのオーバーロードを見るべし)
603 名前:デフォルトの名無しさん mailto:sage [2007/08/10(金) 22:38:02 ] IME制御の質問です アルファベットしか入力し得ないテキストフィールドなので、そのフィールドでの 入力時はIMEの変換モードを英数に固定しようとして hWnd = TextBox1.Handle hIMC = ImmGetContext(hWnd) If hIMC <> 0 Then ImmSetConversionStatus(hIMC, IME_CMODE_ALPHANUMERIC, IME_SMODE_NONE) ImmReleaseContext(hWnd, hIMC) End If のようなことをFormのActivate時に実行してみたのですが、指定したフィールドだけでなく、 全ての項目にこの設定が適用されてしまいます。 その項目だけに効果を与えるにはどうすればよいのでしょうか?
604 名前:デフォルトの名無しさん mailto:sage [2007/08/10(金) 22:50:04 ] >>603 MSDNライブラリのTextBoxのメンバ一覧を穴があくまでじっくり読む
605 名前:デフォルトの名無しさん mailto:sage [2007/08/10(金) 23:09:33 ] >>604 お返事ありがとうございます。 ただ、もし ImeMode の事を言われているのであれば、それが使えない環境なので・・・・・・。 そうでないのであれば、ちょっと判りませんでした。
606 名前:デフォルトの名無しさん mailto:sage [2007/08/11(土) 00:47:24 ] >>605 それどういう環境?
607 名前:デフォルトの名無しさん mailto:sage [2007/08/11(土) 00:59:18 ] .NET Compact
608 名前:デフォルトの名無しさん [2007/08/11(土) 11:37:08 ] すみません、教えてください。 Labelコントロールにおいて、現れている文字列を、マウスの操作でクリップボードに コピーすることは普通はできないと思いますが、もしかしてそういうことができるように するためのプロパティとかは存在しないでしょうか? どうしても不可能な場合はボタンかまたはコンテキストメニューでもつけて クリップボードにコピーするなどは考えられるのですが、テキストボックスと同様に 手軽に使えて、しかも文字列が変更されてしまわないものが望みです。 ちょうど、プロパティ・ダイアログの中のURLなどがそのようにできるものでした。 同様の機能を実現するのには特別なコントロールを自作する必要があるでしょうか? すみませんがよろしくお願いします。
609 名前:デフォルトの名無しさん mailto:sage [2007/08/11(土) 11:47:05 ] TextBoxでReadOnlyにしたらいいんでないの? あとはボーダーとか消してラベルっぽくすれば。
610 名前:デフォルトの名無しさん [2007/08/11(土) 12:26:22 ] >>609 おお、TextBox に ReadOnly というプロパティがあったのですね! わかりました、ありがとうございます! いろいろ新しくなっているのですね!助かりました。
611 名前:デフォルトの名無しさん mailto:sage [2007/08/11(土) 12:33:18 ] おい大昔からなかったかい?
612 名前:デフォルトの名無しさん [2007/08/11(土) 12:43:08 ] 板違いかもしれません。ですが質問します。 C#.NETとVB.NETの違いって何ですか? 調べてみると、(触り程度) C#.NETにメモリーを切る概念が無くなったと。 だったら、方言とコンパイルの速度だけの違いになりますか?
613 名前:デフォルトの名無しさん mailto:sage [2007/08/11(土) 13:56:52 ] ハァ?
614 名前:デフォルトの名無しさん mailto:sage [2007/08/11(土) 13:59:46 ] メモリー切る機能ってなんだよ
615 名前:デフォルトの名無しさん mailto:sage [2007/08/11(土) 14:26:34 ] 俺のおじいちゃんがメモリ確保することを「切る」と言っていたが 21世紀にその言葉を聞けるとは思わなんだ
616 名前:デフォルトの名無しさん mailto:sage [2007/08/11(土) 17:57:37 ] 万能動詞、切る 何が何でも切るって言うんだぜ?
617 名前:デフォルトの名無しさん [2007/08/12(日) 10:06:08 ] コンソールアプリケーションの質問です ReadLineなどで、画面から読み込む文字列を [******]のようにマスクして、読み込む方法はあるのでしょうか? すみませんが、よろしくお願いします
618 名前:デフォルトの名無しさん mailto:sage [2007/08/12(日) 13:05:52 ] >>612 VB.NETはリフレクションを使用するコードが勝手に生成されて凄く遅くなることがある 回避はできるからそれさえ注意すれば一緒
619 名前:デフォルトの名無しさん [2007/08/13(月) 09:08:53 ] 言語の違いなど飾りです。 PGさんにはそれがわからんとです。
620 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 10:44:01 ] つまらん
621 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 14:16:59 ] Graphicsクラスで1ピクセルの点をPenを使って書く時って Graphics.DrawLine(Pens.Black, New PointF(10, 10), New PointF(10.1, 10.1)) のようにPointF使うしかないの?
622 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 15:21:56 ] もう少しものの聞き方を勉強しなおした方がいいよ。
623 名前:621 mailto:sage [2007/08/13(月) 15:33:05 ] >>622 ごめんなさい。
624 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 16:24:46 ] DrawLineはPointFを引数にするものもあるけど、Singleを引数にしているものもあるだろ? あとなんで1ピクセルが0.1だと思ってるんだ?
625 名前:621 mailto:sage [2007/08/13(月) 17:38:46 ] >>624 Graphics.DrawLine(Pens.Black, 10, 10, 10, 10) だと何も描かれないですし、 Graphics.DrawLine(Pens.Black, 10, 10, 11, 11) や Graphics.DrawLine(Pens.Black, 10, 10, 11, 10) だと2ピクセル分描かれます。 10.1を指定するときれいに1ピクセル分描かれるのですが。 何かとんでもないトコを見落としているのかなぁ。 もうちょっと調べてみます。
626 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 17:48:01 ] ピクセルの操作はBitmap.SetPixel/GetPixelで。 短いラインがどのなんドットなるかなんて、 ディスプレイディバイスの種類が違ったり、 スケールとか座標系いじったりしたら意味ないだろ。
627 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 18:05:15 ] >10.1を指定するときれいに1ピクセル分描かれるのですが。 あほすぎて話にならん。 そんなのディスプレイの都合上、1ピクセル分の直線が引かれているように見えるだけだろ。 プログラム上では0.1ピクセルの直線を引いてる。 結果さえよければどうでもいいのか? 説明が面倒なので、答えを書く。 お前が書きたい1ピクセルの点というのは、数学的に言えば「一辺1ピクセルの面」だ。 面を書くのはDrawLineではない。 e.Graphics.FillRectangle(Brushes.Black, 10, 10, 1, 1)
628 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 18:07:38 ] >>626 .netじゃ座標や幅の基本単位がピクセルだから関係ないんじゃね? twipならディスプレイの設定で変化してくるが。
629 名前:621 mailto:sage [2007/08/13(月) 18:17:21 ] >>627 もちろんFillRectangleやSetPixelを使うことは知っています。 1ピクセルの点をPenを使って書く時に10.1のように 書くしかないのですかという質問なのですが。
630 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 18:17:57 ] .NET2.0用に作成したアプリケーションは、3.0しかインストールしていないWindowsでは 動作しないのでしょうか?
631 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 18:24:08 ] ポカーン
632 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 18:24:52 ] >>629 1x1のビットマップを作成してDrawImageという手もあるけど それならまだ10.1の方がスマートな気がする >>630 3.0は、2.0に一切手を入れずに新機能を追加しただけのもの MSを信じるなら全く問題ないはず
633 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 19:13:37 ] >>629 だからよ、お前はDrawLineの仕様がわかってないって言われてるの。 DrawLineはあくまで座標ペアで指定された2つの点を結ぶ直線を描画するんだ。 「点」ってのは直線じゃないだろう? Graphics.DrawLine(Pens.Black, New PointF(10, 10), New PointF(10.1, 10.1)) お前のこれは、「見かけ上」1ピクセルの点に見えるだけで、プログラム上じゃ(10, 10)to(10.1, 10.1)の直線なワケ。 お前が厳密に1ピクセルの点を書きたいわけじゃなく、ただ見かけだけそうなってりゃいいや、っていうならそれでいいよ。 ただ、そんなのに甘んじるようなお前は果てしなくセンスが無いってだけだ。
634 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 19:25:55 ] Penで点を描くのは確かにおかしいかも
635 名前:621 mailto:sage [2007/08/13(月) 21:25:54 ] >>633 すみません。怒らせちゃって。 確かにおかしいんですよ。 僕も通常点を描くだけならFillRectangleで済ますんですが ただ描画するのは違うクラスでこのクラスはもう変更きかなくて Penと座標しか指定できないので 困ってたんです。 で、やっとこさ10.1というのを発見してあなたの言う見かけだけ はできたのですが、他に何かないかなと思った次第でして。 あなたと私はたぶん似ているんだと思います。 私もDrawLineの仕様を言いたいですが、 Penと座標しか指定できない場合、10.1と指定するのことに 甘んじたくなくて質問したんです。 あなたも同じ状況なら他になにかないか探すと思います。
636 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 21:31:33 ] そもそもPenと座標しか指定できないのになんで他の方法を探してたの?
637 名前:621 mailto:sage [2007/08/13(月) 21:32:58 ] >>632 ありがとうございます。 少し気が楽になりました。
638 名前:621 mailto:sage [2007/08/13(月) 21:36:12 ] >>636 他の方法というのは 例えば独自のPenを作成するとか Penのプロパティにそういうのが指定できるとか もしあったらと思いまして。 ですのでPenを使って何かないのかなと質問しました。
639 名前:デフォルトの名無しさん mailto:sage [2007/08/14(火) 02:14:46 ] フォームクラス以外のクラスからフォーム上のコントロールを操作したいとき、 My.Forms.Form1.TextBox1.text = "2ch2ch" とか使う?それとも引数で渡す? 俺はMSがせっかく用意してくれてるんだからMy使うんだけど、みんなはどっち?
640 名前:デフォルトの名無しさん [2007/08/14(火) 04:42:20 ] TreeView や ListView 上の ListViewItem というのは、 Selected 状態と Active 状態とで異なるでしょうか? Explorer上の TreeView や ListView では、点線でかこまれただけの状態の Item と、実際に選択されて薄いパープル色あるいはグレーのバックカラーになって現れている 場合の2種類がありますが、それらに対応するものなのでしょうか。
641 名前:デフォルトの名無しさん mailto:sage [2007/08/14(火) 04:51:13 ] はて、Active 状態ってのは一体どのプロパティがどの値になってるのを指すんだ?
642 名前:640 [2007/08/14(火) 05:21:30 ] >>641 そうですね、よくわからないんですが、OnItemAvtivated() の Protected メソッドが 動くときのイベントが発生したとき、という意味のつもりでした。 Explorer では「単なる点線囲み状態」 と 「BackColorが色付く状態」 の両方があったので そういう違いがある2つの状態というものがあって、それが Selected とは別の何かなのかなと 思ったのでした。 そういうもの自体存在しないのでしょうか。
643 名前:デフォルトの名無しさん mailto:sage [2007/08/14(火) 09:43:48 ] OnItemActivate の二つ先に Activation プロパティがある。その解説読んでみ。 > 「単なる点線囲み状態」「BackColorが色付く状態」 ListViewItem にそれぞれ対応するプロパティがある。 TreeView は単一選択なんでこの辺は無関係。
644 名前:デフォルトの名無しさん mailto:sage [2007/08/14(火) 09:49:15 ] >>639 ほんとは引数で渡した方がいい テキストボックスも直接公開するんじゃなくてForm1にString型のプロパティを定義した方がいい でもどうせ使い捨てなら別にどうでもいい
645 名前:640 [2007/08/14(火) 14:15:33 ] >>643 ご指導どうもです、この 「点線囲み状態」 は ListViewItem の Focused プロパティに 関係ありそうですね。さらにあちこち見て調べてみます。 ありがとうございました!
646 名前:デフォルトの名無しさん [2007/08/14(火) 15:07:48 ] >>627 プププ何コイツ 久々に笑わせられたぜww >数学的に言えば「一辺1ピクセルの面」だ。 何が数学的だよ1ピクセルはプログラム上は点に決まってんじゃん。www >e.Graphics.FillRectangle(Brushes.Black, 10, 10, 1, 1) ちゃんと4ピクセルの面を指定しるじゃん。wwwうぇwww FillRectangleってのは領域の内側を塗るんだよ。おバカさん 内側ってのは右辺と下辺から1ピクセル分引いた値。w で結果1ピクセル分だけ塗られているだけだぽwww 直線上にない異なる3点以上を指定しないと面にならないことくらい 消防でも知ってるっつうの。 >一辺1ピクセルの面 プププププww 一番小さい面は3ピクセルの三角形だよwwwwww ってかムキになってる638はその前に氏ねよwww。 こいつらくだんね。
647 名前:デフォルトの名無しさん mailto:sage [2007/08/14(火) 15:15:40 ] ( ゚д゚)ポカーン
648 名前:デフォルトの名無しさん mailto:sage [2007/08/14(火) 16:09:05 ] >>646 >FillRectangleってのは領域の内側を塗るんだよ。おバカさん >内側ってのは右辺と下辺から1ピクセル分引いた値。w FillRectangleには下辺の指定とかないんだけど、勝手に定義を変更しているあなたはなんなの? >e.Graphics.FillRectangle(Brushes.Black, 10, 10, 1, 1) これは座標(10,10)から始まる幅1高さ1の面ってことだろ? ってか文章からして釣りだよなw
649 名前:デフォルトの名無しさん mailto:sage [2007/08/14(火) 16:14:46 ] >>635 >僕も通常点を描くだけならFillRectangleで済ますんですが >ただ描画するのは違うクラスでこのクラスはもう変更きかなくて >Penと座標しか指定できないので >困ってたんです。 こういう背景も書かずに、いきなり>>621 みたいな聞き方するから、Bitmap.SetPixel/GetPixelやFillRectangleなんて話がでてきたんではないの? 『定義の使用上、通常1ピクセルの直線は描画できないDrawLineで、 1ピクセルの点を描画する方法はありませんか』 とか聞けばいいのに。
650 名前:デフォルトの名無しさん [2007/08/14(火) 17:13:09 ] >>648 >これは座標(10,10)から始まる幅1高さ1の面ってことだろ? これ読んだら吹いたwww お前633で「点」ってのは直線じゃないだろう? って言ってたじゃん。 点は直線じゃないが面になるのかよwww お前まさか座標のことピクセルとピクセルの間だと思ってないかww GetPixelでカラー取得できなくなるっちゅうのwwww Rectangle( 10, 10, 1, 1)ってのは (10,10)(10,11)(11,10)(11,11)の4点を表すんだよwww DrawRwctangleやってみろよwwうぇぇぇぇwwww >1ピクセルの面なんてねぇぇぇよwwうふ
651 名前:デフォルトの名無しさん mailto:sage [2007/08/14(火) 18:14:34 ] >>650 俺は627で「1ピクセルってのは点じゃなくて幅1高さ1の面だ」って言ってるんだが…。 だからこそ1ピクセルの「いわゆる」点を書くのは、面を塗りつぶす e.Graphics.FillRectangle(Brushes.Black, 10, 10, 1, 1) だと言うているんだが…? 目に見える「点」なんて存在しないだろ? お前の言いたい事がてんでわからん。
652 名前:651 mailto:sage [2007/08/14(火) 18:16:58 ] >>650 e.Graphics.FillRectangle(Brushes.Black, 10, 10, 1, 1) ちなみにこれは座標(10,10)だけが塗りつぶされます。 あおる前に試してから書き込め、糞が。