C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■8753  Re[2]: データグリッドの列を非表示にしたい
□投稿者/ Yuhimaru -(2007/10/09(Tue) 15:20:59)
    ありがとうございます。
    どうしてもこの仕様じゃないと画面の幅の制約等がありまして・・・

    CellPaintingとういイベントがあるのですね。調べてみます。
    ありがとうございました。

    No8741 (魔界の仮面弁士 さん) に返信
    > ■No8731 (Yuhimaru さん) に返信
    >>たとえば以下のような場合、サイズだけ非表示にするというのは可能でしょうか?
    >>同列の一部だけ非表示というのが載ってませんでした。
    >
    > 本来であれば、「種類 サイズ」という 1 列で表現するのではなく、
    > 「種類」「サイズ」の 2 列で表現するべきかと思いますよ。
    >
    > で……どうしても「種類 サイズ」という 1 列で表現しなくてはいけないのであれば、
    > CellPainting イベント等で処理することで、部分的に表示/非表示といった表現が可能です。
記事No.8731 のレス /過去ログ20より / 関連記事表示
削除チェック/

■8754  Re[1]: データグリッドの列を非表示にしたい
□投稿者/ Yuhimaru -(2007/10/09(Tue) 15:21:08)
    No8731 (Yuhimaru さん) に返信
    > 2007/10/09(Tue) 11:52:33 編集(投稿者)
    >
    > データグリッドの列を非表示にしたいです。
    > たとえば以下のような場合、サイズだけ非表示にするというのは可能でしょうか?
    > いろいろ調べたのですが、一列だけ非表示にするやり方は書いてあっても
    > 同列の一部だけ非表示というのが載ってませんでした。
    > 可能でしたら方法をお教えください。
    > 宜しくお願いします。
    >
    >        この列のサイズだけ非表示にしたい
    >          ↓
    >  金額    |種類 サイズ|
    > _____|_____|___
    >  20000   |式   中 |
    >  30000   |本   大 |
    >   ・     |・     ・ |
    >   ・     |・     ・ |
    >   ・     |・     ・ |
    >
記事No.8731 のレス / END /過去ログ20より / 関連記事表示
削除チェック/

■8751  Re[6]: VB Printオブジェクトについて
□投稿者/ ゆう -(2007/10/09(Tue) 15:07:37)

    (1)クリップボードには、求める画像が正しく入っているのか?
      → 正しく入っています

     (2)Clipboard.GetData() は、クリップボード内の画像全体を返してくれているか?
      → 画像サイズは1280*800

     (3)Printer.PaintPicture で、その画像を印刷できているか?
      → 引数の指定で入るようになったが上部が切れてしまう

    Printer.PaintPicture P, 0, 0, , , P.Width / 1000 * 567 / Screen.TwipsPerPixelX, P.Height / 1000 * 567 / Screen.TwipsPerPixelY
記事No.8734 のレス /過去ログ20より / 関連記事表示
削除チェック/

■8752  Re[1]: 分岐処理で、処理を中断する
□投稿者/ ぼのぼの -(2007/10/09(Tue) 15:13:59)
    No8750 (ネスト さん) に返信
    浅学につき理由はちょっとわからないのですが、手元の環境で試した限り、
                     case 0:
                         this.Close();
                         return;
    とすると期待の動作をしてくれるみたいです。
記事No.8750 のレス /過去ログ20より / 関連記事表示
削除チェック/

■15486  Re[6]: WinUnitをマルチバイトコードで使うと実行
□投稿者/ PATIO -(2008/03/13(Thu) 16:05:10)
    No15485 (επιστημη さん) に返信
    >>問題は、ビルド後のイベントで動かないと言う件だなぁ。
    >>はっ、もしかして私のところだけの現象だったりして。(--;
    >
    > ありゃりゃーん?
    > 僕とこでは WinUnit $(TargetPath) で一発おkでしたですなり。
    > # WinUnit.exe のパスが通っていれば

    ぐはっ、私のとこだけか。
    直接、フルパスで指定しているので起動自体は出来てるんですけどね。
    なぜかライブラリファイルのロードでこけるのです。
    なぜなんだー。
    PC再起動すれば直ったりして。(^^;
    してみよっ。
記事No.15474 のレス /過去ログ32より / 関連記事表示
削除チェック/

■91910  Re[7]: C++からVBへの変換
□投稿者/ えんえん -(2019/08/09(Fri) 13:12:21)
    ありがとうございます。

    つまり、要素数r以降の配列を
    別の配列にコピーすれば同じことができるわけでしょうか?

    あと、IntPtrはポインタではないのでしょうか?

記事No.91899 のレス /過去ログ158より / 関連記事表示
削除チェック/

■91913  Re[8]: C++からVBへの変換
□投稿者/ 魔界の仮面弁士 -(2019/08/09(Fri) 13:54:08)
    2019/08/09(Fri) 17:05:54 編集(投稿者)

    No91910 (えんえん さん) に返信
    > つまり、要素数r以降の配列を
    > 別の配列にコピーすれば同じことができるわけでしょうか?

    配列をコピーする必要はありません。同じ配列を参照しておき、
    その配列のどの位置を読み書きするのかという、Index 情報さえあれば OK です。

    というか、今回の fft は配列引数の内容を書き換えるものなので、
    配列の「コピー」を渡してしまっては、再帰処理の意味が無いと思います。



    No91907 (えんえん さん) に返信
    > C++でいう
    > &tmpr[r]
    > これって要素rだけを取り出しているのでしょうか?

    実引数 &x[2] が 仮引数 y[] に渡されたとき、
    y[1] は、呼び出し元の x[3] を意味します。


    下記のようにすると、
     22, 33, 55
     11, 22, 44
    と出力されます。

    // ------------------
    void fff(double ar[])
    {
     std::cout << ar[-1] << ", " << ar[0] << ", " << ar[2] << std::endl;
    }

    int main()
    {
     double ary[5];
     ary[0] = 11;
     ary[1] = 22;
     ary[2] = 33;
     ary[3] = 44;
     ary[4] = 55;

     fff(&ary[2]);
     fff(&ary[1]);

     return 0;
    }


    > あるいはr以降を取り出しているのでしょうか?

    とりあえず、VB でこんな処理があったとします。
    この場合、仮引数「d」は、実引数「dblArray(1)」への参照となっています。

     Sub Main()
      Dim dblArray As Double() = {11, 22, 33}
      Test(dblArray(1))
      Array.ForEach(dblArray, AddressOf Console.WriteLine)
     End Sub
     Sub Test(ByRef d As Double)
      d = 123
     End Sub


    上記を実行すると、配列の内容が {11, 22, 33} から { 11, 123, 33 } に変化します。


    Test 側で dblArray(1) だけでなく dblArray(2) も書き換えられるようにする場合には、
    配列全体を渡すようにして、書き換える位置を別の引数で渡すようにします。

     Sub Main()
      Dim dblArray As Double() = {11, 22, 33}
      Test(dblArray, 1)
      Array.ForEach(dblArray, AddressOf Console.WriteLine)
     End Sub
     Sub Test(ByVal d As Double(), ByVal i As Integer)
      d(i + 0) = 123
      d(i + 1) = 456
     End Sub




    > これをVBで書くとどうなりますか?

    たとえば上記の処理は、最近の C# だとこのように書けます。

    /* 要 C# 7.2 以上 / VS2017 15.5 以上 */
    static void Main()
    {
      double[] dblArray = { 11, 22, 33 };
      Test(dblArray.AsSpan(1)); // { 22, 33 } が渡される
      Array.ForEach(dblArray, Console.WriteLine); // { 11, 123, 456 } が渡される
    }

    private static void Test(Span<double> span)
    {
      span[0] = 123;
      span[1] = 456;
    }


    将来的には Visual Basic でも同じように書ける様になると思いますが、
    現状の言語仕様だと、自前で位置管理の変数を追加するなり、
    ArraySegment を経由させるなり、あるいは IntPtr で
    アンマネージ管理する力技ぐらいしか手が無いかと思います。

    今回のように再帰呼び出しなら、クロージャにまとめてしまっても良いかも。
記事No.91899 のレス /過去ログ158より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -