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

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

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

全過去ログを検索

<< 0 >>
■29921  Re[4]: newについて
□投稿者/ T.K -(2008/12/16(Tue) 15:23:43)
    No29919 (倉田 有大 さん) に返信
    > ■No29918 (T.K さん) に返信
    >>■No29912 (たくボン さん) に返信
    > >>■No29905 (T.K さん) に返信
    >>
    >>ご返事ありがとうございます。
    >>
    >>>>1.上記の場合、Newするたびに、ファイルを必ず読み出しているのでしょうか?
    > >>どこでファイルの読込を行っているかですね。コンストラクタ内でファイルを開いているなら、newするたびに読込されます。
    >>言葉尻を捕まえて質問するようで申し訳ないのですが、とても気になっている部分なので、質問させてください。
    >>コンストラクター以外の所でnewすれば、読込みは行われないと思っていいのでしょうか?
    >>たとえば、各画面の.Load()のところでnewしていれば読込みは行わないと思っていいのでしょうか?
    >>
    >>>>2.親Form→子Form→孫FormとFormを開く毎にメモリー空間を占有していっているのでしょうか?
    >>>>(タスクマネージャーで確認しても、必ずメモリー空間を占有しているようには見えませんでした。)
    > >>何がメモリを消費していると思っていますか?画面?それとも日本・他国用に用意した文字列コレクション?
    > >>タスクマネージャーの何を見てそう判断されたのかわかりませんが、不安ならデータサイズを計測してみては?
    > >>おそらく、TKさんが思っているほどメモリは使ってないと思いますよ。
    >>日本語・他国語用に用意した文字列コレクションが、親Formに1つ、子Formに1つ、孫Formに1つと増えていくことを恐れています。
    >>
    >>>>3.どのタイミングでDispクラスで占有してるメモリー空間は開放されるのでしょうか?
    >>>>(タスクマネージャーではいつ開放されるタイミングが一定ではなく、よくわかりませんでした。)
    > >>
    > >>GCで管理するDispクラスのインスタンスへの参照カウンタが0になった後、決められたタイミングで解放されます。
    > >>GCの動作を知りたいなら書籍を探せばありますよ。
    >>ありがとうございます。調べてみます。
    >>
    > >>本来、.NETではプログラマがメモリ管理を意識しないでも作成できるのが特徴なので、プログラマが意識する必要はありません。(ただし、勉強したいというなら別です。しっかり勉強してください)
    >>
    >>>>4.このような場合、どのように対応していくのがC#としてベストな方法なのでしょうか?
    >>>> (グローバル変数で対応するのは、オブジェクト指向ぽっくないような気がするし、
    >>>> かといって、毎回Newするのも速度やメモリースペース的に、ベストではないような気もします。)
    > >>
    > >>うんうん。こうやって色々考えてる姿はいいですね。
    > >>カルチャとリソース、【多国】語対応で検索してみては?きっと望んでいる機能がありますよ:-)
    >>アドバイスありがとうございます。
    >
    > 実行中一度しか読み込まないのであればMainメソッドでファイルをよみこませて、フォームに渡してあげればどうでしょうか。

    うおーーー。そうですね。フォームへデータを渡せばいいんですよね。
    C#をはじめたばかりなもので、クラスばかりに気をとられていました。
    様々なアドバイス、ありがとうございました。
記事No.29905 のレス / END /過去ログ53より / 関連記事表示
削除チェック/

■94086  Re[21]: VBより今開いてるExcelのファイル名の取得
□投稿者/ さき -(2020/03/11(Wed) 19:17:50)
    No94084 (魔界の仮面弁士 さん) に返信

    > 「開いているファイル名を返し、ついでに Excel も閉じる」ようにすれば

    ありがとうございます。
    閉じるコマンドのみでも教えては頂けないでしょうか。

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

■94087  Re[22]: VBより今開いてるExcelのファイル名の取得
□投稿者/ 魔界の仮面弁士 -(2020/03/12(Thu) 09:52:37)
    No94086 (さき さん) に返信
    >>「開いているファイル名を返し、ついでに Excel も閉じる」ようにすれば
    > 閉じるコマンドのみでも教えては頂けないでしょうか。

    えぇと…?

    「ブックを閉じるメソッド」、「Excel 本体を閉じるメソッド」の両方とも
    既に紹介済みですし、メソッド名だけでなく、その引数仕様の書かれた資料も提示しましたし、
    実際にそれらが使われているサンプルも複数提示していますよね。


    さきさんの投稿を私が理解しきれていないにせよ、私の回答をさきさんが読み解けていないにせよ、
    いまひとつ会話のキャッチボールが成立していないように感じています。


    Python は超初心者らしいですし(No94029)、VB の知識量や、Excel オブジェクトに関する知識が
    不足しているなら、先の一連の回答では理解しきれていない点が多々あるのではないかと懸念しています。
    (外部アプリの制御なので入門者レベルだと辛いでしょうが、初〜中級レベルの知識があるなら何とかなるでしょう)


    まずは「何が分からないのか」あるいは「何がどううまくいかないのか」を『具体的』に提示してください。

    回答文あるいは紹介した URL の中で、不明な用語や理解できない点があるのならば、
    どの部分が分からないのかを示してください。必要であれば説明します。

    こちらで提示したサンプルを動作させることができなかったのであれば、どういう状態になっているのかを
    書いてください。結果をフィードバックして頂ければ、訂正版や改良版を提示できるかもしれません。

    サンプルを試そうとしてコンパイルエラーになるのなら、どの行が何というエラーに
    なっているのかを、今度こそ正確に書き写してください。エラー内容は重大な手掛かりになりえますので。

    コンパイルはできたけれども、実際に動かしたらエラーになってしまうようであれば、
    どういう操作をしてどの行が何というエラーになるのかを提示してください。状況説明が大事。

    サンプルは動いたけれど自分の要件に合わないというのなら(期待する閉じ方ではなかったなど)、
    どういう動作を期待していたのに、実際にはどうなってしまうのかを具体例と共に挙げてください。

    サンプルの各行で、意図の読み取れない記述が残っているのなら、
    ステートメントやメソッドの意味をリファレンス等で調査してください。
    その上で不明点が残るなら、どの行がまだ理解できていないのかを
    ピンポイントで逆質問してください。

    サンプルを読み解くことはできても、それを実際の自分のコードに組み込もうとすると
    行き詰ってしまうのなら、どの部分で詰まっているのかを明確にするため、
    現在書いているコードを提示した上で、悩んでいる箇所を示してください。



    それと…当初の質問タイトルから、そろそろ離れてきてしまいましたし、
    20投稿を超えて複数ページに分かれてしまったので、要件にあったタイトルを
    付けなおして、別の質問スレッドを立てなおすことをお奨めします。
    (問題無いと思うなら、このまま同じスレッドで続けて頂いても OK です)
記事No.94040 のレス /過去ログ163より / 関連記事表示
削除チェック/

■94714  Re[3]: Treeviewへのノードの追加について
□投稿者/ Hongliang -(2020/05/08(Fri) 21:27:44)
    https://docs.microsoft.com/ja-jp/dotnet/api/system.windows.forms.treenodecollection.find?view=netcore-3.1#System_Windows_Forms_TreeNodeCollection_Find_System_String_System_Boolean_
    Findメソッドの第2引数は、子孫ノードすべてを検索するか直接の子ノードのみを検索するかを指定するパラメータであって、見つかったかどうかを返してくるパラメータではありません(ByRefではないですよね)。
    返値として見つかったノードの配列が返されるので(同じ名前を持ったノードが複数存在できるので配列になります)、その長さが0なら存在しない、そうでないなら存在する、と判定できます。

    ああ、ただFindメソッドはTreeNodeのTextではなくてNameを検索するメソッドでした。
    Findメソッドを有効に使うには、TreeNodeをNewしたときについでにNameプロパティにも同じ文字列を設定しておく必要がありますね。

    Find以外の手段としては、For EachなどでNodesプロパティの中のTreeNodeを順次調べて対応するTextを持ったTreeNodeを探すというのもあります。
記事No.94710 のレス /過去ログ164より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -