C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法
ツリー表示
トピック表示
ランキング
記事検索
過去ログ
ログ内検索
キーワードを複数指定する場合は 半角スペース で区切ってください。
検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
[返信]をクリックすると返信ページへ移動します。
キーワード
/
検索条件
/
(AND)
(OR)
検索範囲
/
(現在のログ)
(全過去ログ)
(過去ログ1)
(過去ログ2)
(過去ログ3)
(過去ログ4)
(過去ログ5)
(過去ログ6)
(過去ログ7)
(過去ログ8)
(過去ログ9)
(過去ログ10)
(過去ログ11)
(過去ログ12)
(過去ログ13)
(過去ログ14)
(過去ログ15)
(過去ログ16)
(過去ログ17)
(過去ログ18)
(過去ログ19)
(過去ログ20)
(過去ログ21)
(過去ログ22)
(過去ログ23)
(過去ログ24)
(過去ログ25)
(過去ログ26)
(過去ログ27)
(過去ログ28)
(過去ログ29)
(過去ログ30)
(過去ログ31)
(過去ログ32)
(過去ログ33)
(過去ログ34)
(過去ログ35)
(過去ログ36)
(過去ログ37)
(過去ログ38)
(過去ログ39)
(過去ログ40)
(過去ログ41)
(過去ログ42)
(過去ログ43)
(過去ログ44)
(過去ログ45)
(過去ログ46)
(過去ログ47)
(過去ログ48)
(過去ログ49)
(過去ログ50)
(過去ログ51)
(過去ログ52)
(過去ログ53)
(過去ログ54)
(過去ログ55)
(過去ログ56)
(過去ログ57)
(過去ログ58)
(過去ログ59)
(過去ログ60)
(過去ログ61)
(過去ログ62)
(過去ログ63)
(過去ログ64)
(過去ログ65)
(過去ログ66)
(過去ログ67)
(過去ログ68)
(過去ログ69)
(過去ログ70)
(過去ログ71)
(過去ログ72)
(過去ログ73)
(過去ログ74)
(過去ログ75)
(過去ログ76)
(過去ログ77)
(過去ログ78)
(過去ログ79)
(過去ログ80)
(過去ログ81)
(過去ログ82)
(過去ログ83)
(過去ログ84)
(過去ログ85)
(過去ログ86)
(過去ログ87)
(過去ログ88)
(過去ログ89)
(過去ログ90)
(過去ログ91)
(過去ログ92)
(過去ログ93)
(過去ログ94)
(過去ログ95)
(過去ログ96)
(過去ログ97)
(過去ログ98)
(過去ログ99)
(過去ログ100)
(過去ログ101)
(過去ログ102)
(過去ログ103)
(過去ログ104)
(過去ログ105)
(過去ログ106)
(過去ログ107)
(過去ログ108)
(過去ログ109)
(過去ログ110)
(過去ログ111)
(過去ログ112)
(過去ログ113)
(過去ログ114)
(過去ログ115)
(過去ログ116)
(過去ログ117)
(過去ログ118)
(過去ログ119)
(過去ログ120)
(過去ログ121)
(過去ログ122)
(過去ログ123)
(過去ログ124)
(過去ログ125)
(過去ログ126)
(過去ログ127)
(過去ログ128)
(過去ログ129)
(過去ログ130)
(過去ログ131)
(過去ログ132)
(過去ログ133)
(過去ログ134)
(過去ログ135)
(過去ログ136)
(過去ログ137)
(過去ログ138)
(過去ログ139)
(過去ログ140)
(過去ログ141)
(過去ログ142)
(過去ログ143)
(過去ログ144)
(過去ログ145)
(過去ログ146)
(過去ログ147)
(過去ログ148)
(過去ログ149)
(過去ログ150)
(過去ログ151)
(過去ログ152)
(過去ログ153)
(過去ログ154)
(過去ログ155)
(過去ログ156)
(過去ログ157)
(過去ログ158)
(過去ログ159)
(過去ログ160)
(過去ログ161)
(過去ログ162)
(過去ログ163)
(過去ログ164)
(過去ログ165)
(過去ログ166)
(過去ログ167)
(過去ログ168)
(過去ログ169)
(過去ログ170)
(過去ログ171)
(過去ログ172)
(過去ログ173)
(過去ログ174)
(過去ログ175)
(過去ログ176)
(過去ログ177)
(過去ログ178)
(過去ログ179)
強調表示
/
ON
(自動リンクOFF)
結果表示件数
/
20件
30件
40件
50件
100件
記事No検索
/
ON
大文字と小文字を区別する
全過去ログを検索
ヒット / 4件
(1-4 を表示)
<<
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
-