[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 04/08 11:46 / Filesize : 273 KB / Number-of Response : 1029
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ふらっと C#,C♯,C#(初心者用) Part141



1 名前:デフォルトの名無しさん [2018/12/15(土) 11:07:07.89 ID:0aSEF/I+0.net]
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■関連スレ
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part139
https://mevius.5ch.net/test/read.cgi/tech/1538646998/
■コードを貼る場合は↓を使いましょう。
ideone.com/
https://dotnetfiddle.net/

■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
referencesource.microsoft.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

892 名前:デフォルトの名無しさん mailto:sage [2019/02/19(火) 22:33:06.53 ID:MriKnXlj0.net]
>>866
なくはない
https://ufcpp.net/study/csharp/cheatsheet/apscripting/

893 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 01:09:59.10 ID:WG18KXuW0.net]
助けて!!
Parallel.Forを使ってそれぞれで別の演算アプリを起動して
4スレッドで演算処理してるんだけど
アプリ強制終了してもスレッド(演算アプリ)はずっと処理し続けてるの!お願い止まって!!

親スレッド(UIスレッド)が死んだら子スレッドも死ぬみたいなお作法ありますか?
演算アプリはSystem.Diagnostics.Process使って起動してます

894 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 01:46:34.63 ID:3QCW37aG0.net]
Process.Kill()でしょ

895 名前:デフォルトの名無しさん [2019/02/20(水) 02:03:55.40 ID:/GvzZ744d.net]
>>868
それはC#的にスレッドとは言わない。
別プロセスだ

896 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 07:56:23.82 ID:Jfh2EJBjr.net]
電源off

897 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 09:16:30.41 ID:JdxivbIi0.net]
>>868
CancellationTokenSourceを使ってみれば?

898 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 16:01:28.63 ID:qtZmd9yJa.net]
form1にsplit container をverticalで貼り付けて左右に2分割してその中にボタンとかコンポーネントいろいろ置いてて、
あとから上にmenu stlipを追加したくなってツールボックスからmenu stripコンポーネントをドラッグ&ドロップすると
splitcontanerのpanel1かpanel2のどっちかにしか貼り付けられないのだけどform1にmenuStripを表示するようにするにはどう操作すればいいのでしょうか

899 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 16:10:46.41 ID:YXUL7WNb0.net]
一旦張り付けてから
ドキュメントアウトライン表示させてForm直下に移動させる

900 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 16:31:00.95 ID:ThCTwK+Ha.net]
>>873
前も書いたけど、
[ctrl] + [alt] + t



901 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 16:42:16.67 ID:qtZmd9yJa.net]
>>874
ありがとうございます

902 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 16:43:52.95 ID:qtZmd9yJa.net]
>>875
ありがとうございます

配置していたテキストボックスがめり込んでしまいましたがなんとか修正してみます

903 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 12:23:38.43 ID:A65FK9eD0.net]
目のかすみ
>>872
>>869
神!トークン付けてスレッド実行して
キャンセル時にスレッド内でIsCancellationRequestedで拾って
Process.Kill()すればいいのか
行けそうな気がしてきた

904 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 12:51:17.47 ID:Nj5ihKJg0.net]
それでいいのか
アプリ強制終了っていうからタスクマネージャから落とす時のことを想像してた

905 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 13:02:04.01 ID:A65FK9eD0.net]
>>879
それもあるよ!今はキャンセル機能ないから強制終了させて
この問題発せしたんよ
ちなみに強制終了の場合はなんか手法ある?
別プロセスもタスクマネージャーで落とすしかない?

906 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 13:15:26.35 ID:Nj5ihKJg0.net]
基本的にはそうじゃないかね
ちょっと凝った風にするならプロセス間通信でハートビート送って応答なけりゃ自死するとかあるけど

907 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 16:20:57.98 ID:+4fiWh+W0.net]
すみません、コルーチンの使い方について教えてください。
例えばRPGなどのゲームで、キャラクターAに話しかけると、数秒待って反応が返ってくるという処理をしたいと思っています。

まず、数秒待つというコルーチンを作り
private IEnumerator waitforsecond(float sec) {
yield return new WaitForSeconds(sec);
}

次にAに話しかけた時の処理を作りました。

public void Sample(){
 //50%の確率で無視される
 if(Probability.DetectFromPercent(50)){
MainText.text = “Aに話しかけてみた・・・”;
StartCoroutine(waitforsecond(2));
 MainText.text = "なんとAから無視された!”;
 
 //50%の確率で殴られる
  }else {
MainText.text = “Aに話しかけてみた・・・”;
StartCoroutine(waitforsecond(2));
MainText.text = "なんとAから蹴られた!”;

908 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 16:24:21.78 ID:+4fiWh+W0.net]
これで、話しかけたあと2秒時待機して反応がある、という処理になるかと思ったのですが、うまく行きません。

あと登場キャラクターもA、B、C‥‥とたくさんいるのであれば、話しかけると数秒待って反応するという関数を作ってあげたほうがスッキリするのでしょうが、やり方がイマイチわかりません。

909 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 16:42:20.49 ID:VKoyYoRjM.net]
>>883
非同期や

910 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 17:11:57.24 ID:+4fiWh+W0.net]
>>884
非同期・・ググりました。
「非同期」とは重い処理があった場合は終わるのを待たないこと。とありますが、、



911 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:03:38.92 ID:+XWUccMjM.net]
Wait前にthis.Refresh()って無意味だっけ

912 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:53:42.96 ID:5v/pkJgQa.net]
>>882
何で待つのにイテレーターを使うのかちょっと意味がわかんないねw

913 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 20:08:47.12 ID:c4smrZlO0.net]
yieldでコルーチンという一昔前の一発芸がUnityで幅を利かせているから仕方ないのねー

914 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 20:11:16.75 ID:969mh7640.net]
俺もあいまいな理解だから偉そうには言えないけど
>>882
ここのサンプルが分かりやすいかも
developer.wonderpla.net/entry/blog/engineer/Unity_Co-routine/
>>885
private IEnumerator waitforsecond(float sec) とpublic void Sample()が非同期(違う時間軸での動作)になるので待ち時間になっていない
>>887の言う通り待ち時間には他の物を使わないと

915 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 20:17:45.84 ID:mRRRBv2X0.net]
>>878
その演算アプリがどういう物かわからんが
そもそもそれ別プロセスじゃないとダメなのか?

916 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 22:25:20.57 ID:+4fiWh+W0.net]
>>889
ありがとうございます。
他の物とは具体的にどんな関数を使えばいいのでしょうか?

917 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 23:14:15.44 ID:5v/pkJgQa.net]
>>891
思ったより面倒臭い
https://ideone.com/Sf85HN

918 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 23:22:50.38 ID:5v/pkJgQa.net]
>>892
これ書いてて一つ疑問に思ったのが、
MessagingTask = MessagingTask.ContinueWith(t => job.Action());
これを以下のように、
MessagingTask.ContinueWith(t => job.Action());
こう変えると期待した動きにならない。
ContinueWithってキューになってて先に入ってるタスクの完了を待って次を実行すると思ったけど違うのか

919 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 23:42:43.30 ID:aABnGI350.net]
>>893
重箱の隅…だが。
Task.Run(() => { })の代わりにTask.CompletedTaskってあるよ。
後、Task.Delay(Pause).Wait()ってThread.Sleep(Pause)で良いんでない。

920 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 23:44:55.38 ID:e6A24yU10.net]
>>893
継続タスクが1つとは限らない。複数あったらパラって実行される。



921 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 23:48:25.54 ID:5v/pkJgQa.net]
>>894
うん、知ってたけど今使ってるのがVS2015なのよ...

922 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 23:49:35.07 ID:5v/pkJgQa.net]
>>895
やっぱり俺が誤解して理解してたんだなありがと

923 名前:デフォルトの名無しさん mailto:sage [2019/02/23(土) 14:44:05.16 ID:3cOSTboLa.net]
MenuStripコンポーネントでItemを選択した時にその左にチェックを入れるようにしてるのだけど
選択した時点でメニュー閉じちゃって若干不便なのだけど
ひらいたままにする設定にはできないのでしょうか

924 名前:デフォルトの名無しさん mailto:sage [2019/02/23(土) 19:07:18.92 ID:gzY/wSmba.net]
>>898
ルートのアイテムの直下ならClickか何かで親のShowDropDown()を呼べば一応実現できるっぽい。
入れ子になってる場合は、

....

ToolStripMenuItem1.Click += (sender, e) =>
{
  RecursiveShowDropDown(((ToolStripMenuItem)sender));
};

....

void RecursiveShowDropDown(ToolStripMenuItem item)
{
  if (item == null) return;
  var parent = item.OwnerItem as ToolStripMenuItem;
  RecursiveShowDropDown(parent);
  parent?.ShowDropDown();
}

たぶんこれでいける。
でもエンターキーでクリックした場合の操作性に問題が残るけど

925 名前:デフォルトの名無しさん mailto:sage [2019/02/23(土) 19:24:23.57 ID:gzY/wSmba.net]
こっちの方がいいか
EventHandler eh = (sender, e) =>
{
  Action<ToolStripMenuItem> a = null;
  a = item =>
  {
    if (item == null) return;
    var parent = item.OwnerItem as ToolStripMenuItem;
    a(parent);
    parent?.ShowDropDown();
  };
  a((ToolStripMenuItem)sender);
};
ToolStripMenuItem1.Click += eh;

926 名前:デフォルトの名無しさん mailto:sage [2019/02/24(日) 03:15:52.41 ID:pRL7US30a.net]
>>899
無事できました
ありがとうございます!

927 名前:デフォルトの名無しさん mailto:sage [2019/02/24(日) 11:47:42.69 ID:L3+XvQB40.net]
質問です
現在、以下のように一つの非同期処理(時間のかかるディスクの書き込み)
を実行しています。

private async void button1_Click(object sender, EventArgs e)
{
 await DoSomethingAsync();
 MessageBox.Show("完了");
}

これを実行中にUIを操作して、次の処理の準備ができたら(実行する内容はDoSomethingAsync)
button1を押して予約し、実行中の処理が終わったら引き続き実行させたいです。(並列ではなく)
また、「完了」は登録されたタスクが全て終わったときに出したいです。
どのように書くのが一般的なのでしょうか?


初回実行時にすべての実行すべきタスクがわかっている場合は
そのタスクのリストを作ってWhenAllする みたいなのはググったら出てきたんですが

ContinueWithを使うのかなと思ったのですが、書き方がわかりませんでした

928 名前:デフォルトの名無しさん mailto:sage [2019/02/24(日) 11:58:25.65 ID:u2ta9zSf0.net]
Queue<T>を使えば良いんじゃね

929 名前:デフォルトの名無しさん mailto:sage [2019/02/24(日) 12:36:22.83 ID:cR8EPyISM.net]
>>902
最後に追加したTaskを覚えておいてContinueWithで繋ぐとかできなくはないけど、
そんな変なハックをするくらいなら素直に別スレッド立てて順番にバックグラウンド実行したほうがいい
Producer-Consumerでググれ

930 名前:デフォルトの名無しさん mailto:sage [2019/02/25(月) 11:09:41.10 ID:a5srEHrc0.net]
c#のフォームで、タイルマップエディタのようなものを作りたいのですが、どのような情報を調べたらいいでしょうか
また、そのような目的に適したフォームはありますか?

そもそもC#が適切なのかわからないのですが



931 名前:デフォルトの名無しさん mailto:sage [2019/02/25(月) 11:41:19.60 ID:2iFL+VGx0.net]
>>90結局Unityになるんやろなあ

932 名前:デフォルトの名無しさん mailto:sage [2019/02/25(月) 12:13:30.45 ID:kHS+5sOB0.net]
VisualStudioでデバッグ実行した時だけプログラムがフリーズしてしまうのですがこういう時はどういった原因が考えられるでしょうか?
WinFormを使用していてフォームが立ち上がったらバックグラウンドで色々するって感じの処理なのでどこかでUIスレッドをブロックしているのかとも思いましたがConfigureAwait(false)の設定し忘れは無さそうでした
VisualStudioを通さずに直接実行した場合は正常に動作しています

933 名前:デフォルトの名無しさん mailto:sage [2019/02/25(月) 13:05:26.46 ID:fW706uYI0.net]
とりあえずフリーズした時に「すべて中断」して
どこでブレイクされるか確認
ついでにスレッド一覧を見てみる

934 名前:デフォルトの名無しさん mailto:sage [2019/02/25(月) 13:15:34.63 ID:O8+i9ARHp.net]
>>908
それを試そうとしたのですが全て中断しても中断出来ない状況です
中断押すとVS自体もフリーズしてタスクマネージャーからプログラムを終了しないと復帰出来なくなります

935 名前:デフォルトの名無しさん [2019/02/25(月) 15:41:31.91 ID:stIKiSPsF.net]
最前面じゃなくて後ろ面にアクティブウィンドウがポップアップされてるんじゃね

936 名前:デフォルトの名無しさん mailto:sage [2019/02/25(月) 19:11:52.07 ID:ERkCIkZda.net]
>>902
単純にボタンをクリックした回数だけ非同期メソッドを実行したいだけなら
これでいいような気が

private bool mBusy = false;
private int mRepeatCount = 0;

private async void button1_Click(object sender, EventArgs e)
{
  mRepeatCount += 1;
  if (mBusy) return;
  mBusy = true;
  for (int i = 0; i < mRepeatCount; i++)
    await DoSomethingAsync();
  mBusy = false; mRepeatCount = 0;
  MessageBox.Show("全部終わった");
}

937 名前:デフォルトの名無しさん mailto:sage [2019/02/25(月) 19:17:48.39 ID:61uBElrFd.net]
>>907
俺はエディタでヒント表示させただけで落ちるけど。Blendなら使えてる。

938 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 06:14:33.14 ID:hTJo4mxi0.net]
https://i.imgur.com/NCB8nLP.jpg
c#をデバッグするとこのようなエラーが出るのですが、どこを改善すればいいかヒントをください

939 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 06:21:28.31 ID:byKZhMZS0.net]
>>913
dllのパス

940 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 07:34:07.95 ID:hTJo4mxi0.net]
↑ありがとうございます
.NET Core Launch (console)
というデバッガを使っているので、
"program": "${workspaceFolder}/bin/Debug/<insert-target-framework-here>/<insert-project-name-here>.dll",
という部分を修正するのだと思いますが、どう修正するんでしょうか?
実行したいプログラムを{workspaceFolder}/Program.csと指定してもエラーになります



941 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 07:53:17.80 ID:U5FDQ2yTd.net]
>>915
いやだからcsじゃなくてdllだってば

942 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 07:54:10.15 ID:U5FDQ2yTd.net]
ログにもちゃんと出てるはず

943 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 08:00:35.55 ID:H+xdnOpD0.net]
>>915
プログラミングするなら英語は必須だから、「何だか分からないこと言ってる!」とか思わずにちゃんと読みな。

944 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 08:41:24.11 ID:hTJo4mxi0.net]
>>916
c#なのにDLLなんですか?
このDLLのパスは何をしてるんですか?

945 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 08:50:05.00 ID:UlQR9ttEM.net]
普通にVisualStudio(Codeじゃないやつ)ダウンロードして知識付けてから挑戦しろよ
邪魔だよ

946 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 09:40:46.12 ID:7RJrl9MrM.net]
小学校でプログラミング教育でも受けてろ

947 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 09:54:59.60 ID:s7Q5fSFO0.net]
>>909
そうなるともう新しいプロジェクトに今のを段階的に移していってどこで再現するか確認するかなぁ

948 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 10:57:10.09 ID:s7Q5fSFO0.net]
>>919
とりあえずエクスプローラなりコンソールなりvscodeとは別に開いて
プロジェクトフォルダのbinフォルダの配下を確認
どこかにビルド結果のdllが作られてるから

うちはいつの間にかPlatformって環境変数が定義されてたせいで
HPDとかいうフォルダが1個挟まってたぞ

949 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 10:58:52.43 ID:RV1beKRS0.net]
こっちへどうぞ
Visual Studio Code / VSCode Part5
https://mevius.5ch.net/test/read.cgi/tech/1541649564/

950 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 11:47:10.27 ID:7Gbx8Ae00.net]
>>922
ありがとうございます
とりあえず特定のメソッドを呼ばなければ大丈夫ということがわかったのでデバッグモードでは呼ばないようにして対策することにしました



951 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 11:58:57.74 ID:hTJo4mxi0.net]
>>923
デバッグできました 余計なフォルダが挟まっていました
指定してやらないといけないんですね ありがとうございました

952 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 12:16:54.99 ID:vuJi7+izd.net]
どういたしまして

953 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 12:29:03.14 ID:CYrridvRd.net]
>>923
それDELLやろ

954 名前:デフォルトの名無しさん mailto:sage [2019/02/26(火) 12:29:38.62 ID:CYrridvRd.net]
>>924
そっちはスレチ

955 名前:デフォルトの名無しさん [2019/02/28(木) 00:37:24.74 ID:weUa1N+o0.net]
setterメソッドで文字列が8文字以下ならname変数に引数を代入する文を書きたいんですけど
どのように書けばいいんでしょうか?

956 名前:デフォルトの名無しさん mailto:sage [2019/02/28(木) 00:51:58.07 ID:ucEMLrR20.net]
private string name;
public void SetName( string name )
{
 if ( name.Length <= 8 )
 {
  this.name = name;
 }
}

957 名前:デフォルトの名無しさん mailto:sage [2019/02/28(木) 00:55:51.76 ID:ucEMLrR20.net]
セッターよりもプロパティで良い気がする

private string name;
public string Name
{
 set
 {
  if ( value.Length <= 8 )
  {
   this.name = value;
  }
 }

 get
 {
  return this.name;
 }
}

958 名前:デフォルトの名無しさん mailto:sage [2019/02/28(木) 01:05:38.31 ID:weUa1N+o0.net]
>>931
ありがとうございますー
lengthを使うとint型とstringをオペランドに比較が使えるんですね
覚えておきます

959 名前:デフォルトの名無しさん mailto:sage [2019/02/28(木) 08:14:05.87 ID:3CdGs56rM.net]
>>933
> lengthを使うとint型とstringをオペランドに比較が使えるんですね
言いたいことはなんとなくわかるけどほんとに理解してるのか不安になる文章だな

960 名前:デフォルトの名無しさん mailto:sage [2019/02/28(木) 12:10:16.83 ID:2lomOid8M.net]
8文字越えた場合や
検証属性の話をと思ったけど自重



961 名前:デフォルトの名無しさん [2019/02/28(木) 19:23:03.02 ID:owSMuOWF0.net]
Windows.Forms の質問です。
TextBox 数個と MenuStrip に サブメニューのない MenuItem を追加したFormで
Altキーでメニューを選択すると、
カーソルキーの上下でTextBoxのフォーカスが移動するのですが
どういった理由でしょうか?

962 名前:デフォルトの名無しさん mailto:sage [2019/02/28(木) 20:29:09.92 ID:1IHH1hzPa.net]
>>936
Menuに反応してるのでは?

963 名前:936 mailto:sage [2019/02/28(木) 20:50:40.99 ID:DAgKUWMjM.net]
うーん
ショートカットキーの設定ができるので
ツールバーの代わりに使おうと思ったんですが
予想外のキモい動きで躊躇してます

964 名前:デフォルトの名無しさん mailto:sage [2019/02/28(木) 21:20:30.71 ID:560qka060.net]
ドロップダウンしないのは想定してないだろう

965 名前:デフォルトの名無しさん [2019/03/01(金) 12:58:28.41 ID:ozM8zBQ90.net]
この本おすすめですか?
https://www.amazon.co.jp/dp/4774187585

966 名前:デフォルトの名無しさん mailto:sage [2019/03/01(金) 19:45:05.46 ID:MA7hbDcR0.net]
JS
hoge([[1,2,3], [4,5,6]]);

C#
hoge(new int[,] {{ 1,2,3 }, { 4,5,6 }});

javascriptみたいにnew付けないで渡せないですか?
paramでは2次元がだめでした。

967 名前:デフォルトの名無しさん mailto:sage [2019/03/01(金) 21:07:24.70 ID:tVNocw1h0.net]
サイドバーについてなんですが、例えばgimpというソフトがあるのですが、両サイドにツールやレイヤーが表示されています
このように領域を分けるコントロールを教えてください
win form c#です

これはもう1つフォームを追加してるんでしょうか?

968 名前:デフォルトの名無しさん mailto:sage [2019/03/01(金) 21:59:18.22 ID:ORsij5/P0.net]
>>942
フォームの枠の中に配置・移動させるのならVisual Studioでデザイナ画面+ツールボックスの「コンテナー」のカテゴリの好きなものを
フォームの枠の外やはみ出して使いたいものには別のフォームを割り当て、というのが基本じゃないかな
GimpはCだからどうやっているかは知らないけど

969 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 05:28:46.45 ID:QccNqZJQ0.net]
別フォーム使った場合でもドッギングなど可能ですか?
だとすれば分けたほうが作業しやすそうですが

970 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 10:41:05.28 ID:29oPzrI/0.net]
GTKでやればいいじゃない



971 名前:デフォルトの名無しさん [2019/03/02(土) 11:00:56.30 ID:+L4gK20KF.net]
>>940
超初心者か池沼向け

普通の人はwebで充分

972 名前:デフォルトの名無しさん [2019/03/02(土) 11:02:23.80 ID:+L4gK20KF.net]
GTKは糞

973 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 11:07:40.19 ID:QccNqZJQ0.net]
>>945
win formではドッギングや分離はできないのですか?
また、別フォームと同じフォームでやるのとではどちらが都合がよいでしょうか

974 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 11:11:23.26 ID:PVVyhIVEM.net]
>>948
出来るよ。

975 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 11:12:34.80 ID:PVVyhIVEM.net]
>>948
ttps://dobon.net/vb/dotnet/links/dockingwindow.html

976 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 11:22:59.87 ID:Flko+1Y10.net]
市販のinfragisticsのドッキングウインドウが楽チンだったわ

977 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 18:42:16.44 ID:QccNqZJQ0.net]
Form1からForm2を呼び出すとき、こういう記述をしますが、変数の型がどうしてForm2なんでしょか?varじゃエラーです
Form2 form2 = new Form2();
form2.Show();

978 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 19:06:17.17 ID:QSGa9wbhp.net]
そのform2クラスは君が作ったんじゃないのか?

979 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 19:09:49.50 ID:euLZafKS0.net]
取り敢えずエラーの内容を読めよ

980 名前:デフォルトの名無しさん [2019/03/02(土) 23:01:13.05 ID:XIaahVa70.net]
学習のために、確保した変数がスタックかヒープかどっちにあるのか知りたいんだけどさあ
簡単にチェックする手段ってないんかな?



981 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 23:08:52.67 ID:20MtSIx6a.net]
メモリダンプ系のツール使えばいいよ
昔の話だがメモリ上のオブジェクトグラフを可視化してGC絡みのバグをデバッグした事がある

982 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 23:10:49.78 ID:nONug4XP0.net]
"変数が"ってことなら変数の型が参照型か値型か
要はコンパイルの時点で判断できる
IntelliSenseでclassかstructを見れば良い話に思えるが

983 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 23:19:19.07 ID:20MtSIx6a.net]
box

984 名前:デフォルトの名無しさん mailto:sage [2019/03/02(土) 23:33:08.46 ID:D0+5Vwwl0.net]
>>953
ワロタ

985 名前:デフォルトの名無しさん mailto:sage [2019/03/03(日) 02:27:49.98 ID:6iGgKGSXa.net]
>>957
それは違うと思うw

986 名前:デフォルトの名無しさん mailto:sage [2019/03/03(日) 03:54:21.90 ID:uu9okAeO0.net]
>>953
Form2というプロジェクトを作りましたが、これがクラスになるんですか?
この変数型はどういう意味ですが

987 名前:デフォルトの名無しさん mailto:sage [2019/03/03(日) 07:00:37.71 ID:cg06QXcyM.net]
>>957
w

988 名前:デフォルトの名無しさん mailto:sage [2019/03/03(日) 07:50:47.21 ID:+cu7OMqU0.net]
>>961
一回チュートリアルなり
入門書とか入門サイトなりやってみろと

989 名前:デフォルトの名無しさん mailto:sage [2019/03/03(日) 08:42:41.37 ID:uu9okAeO0.net]
winformでノードエディタは作れますか

990 名前:デフォルトの名無しさん mailto:sage [2019/03/03(日) 08:49:23.89 ID:+cu7OMqU0.net]
"); //]]>-->
991 名前:839627/964" rel="noopener noreferrer" target="_blank" class="reply_link">>>964
いいからForm2わかったのかよ
[]
[ここ壊れてます]

992 名前:デフォルトの名無しさん mailto:sage [2019/03/03(日) 08:57:36.29 ID:2YvY5qRC0.net]
>>964
クラスがなんなのかわかっていないお前には無理
上にも同じ事書かれてるけどまず入門書を読め






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<273KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef