「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part95
http://mevius.5ch.net/test/read.cgi/tech/1508180530/
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part136
http://mevius.5ch.net/test/read.cgi/tech/1520057345/
■コードを貼る場合は↓を使いましょう。
http://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
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
ふらっと C#,C♯,C#(初心者用) Part137
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ドコグロ MM07-2FKJ)
2018/04/06(金) 17:40:19.48ID:oKXVP34zM798デフォルトの名無しさん (ワッチョイ 91e3-HRP5)
2018/05/22(火) 10:58:36.99ID:sxJmXMb80799デフォルトの名無しさん (ワッチョイ b6ed-RYnA)
2018/05/22(火) 11:14:09.28ID:7Riaak3V0 WPFで
WindowStyle="None"
AllowsTransparency="True"
Background="#01FFFFFF"
でほぼ透明だけどマウスイベントを受け取るウィンドウを作ったのですが
これとおなじことをFormでやりたいのですがやりかたがわかりません
どのようにすればいいですか?
WindowStyle="None"
AllowsTransparency="True"
Background="#01FFFFFF"
でほぼ透明だけどマウスイベントを受け取るウィンドウを作ったのですが
これとおなじことをFormでやりたいのですがやりかたがわかりません
どのようにすればいいですか?
800デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 11:23:07.15ID:svO22mue0 >>798
できると思います。
データ格納フォルダB:Aフォームから値を取得
Cクラス:Bから値を取得
となってるのでsetもpublicでないと困るんですよね。
データ格納フォルダBの値はAから値取得した後なにも処理がないので、
「Reは使用されていません」って正しい警告なんですけどねぇ。
格納しているデータが10個あって警告10個もでるとさすがにうっとうしい。
できると思います。
データ格納フォルダB:Aフォームから値を取得
Cクラス:Bから値を取得
となってるのでsetもpublicでないと困るんですよね。
データ格納フォルダBの値はAから値取得した後なにも処理がないので、
「Reは使用されていません」って正しい警告なんですけどねぇ。
格納しているデータが10個あって警告10個もでるとさすがにうっとうしい。
801デフォルトの名無しさん (ブーイモ MMa1-9Jwc)
2018/05/22(火) 12:14:32.87ID:CqasDiEMM802デフォルトの名無しさん (ブーイモ MMde-+Nwo)
2018/05/22(火) 12:16:10.65ID:O9GDwfVPM BのコンストラクタにAからの値を受け付けて
public readonly double Reに渡すとかじゃだめなんね?
public readonly double Reに渡すとかじゃだめなんね?
803デフォルトの名無しさん (アウアウエー Sa02-vTsT)
2018/05/22(火) 12:36:59.84ID:2EZjLjzja >>799
Formはウィンドウ全体のアルファはOpacityで指定できるけど、
背景だけ透過させるとかは簡単にはできなかったような
http://yellow.ribbon.to/~azumaya/doc_dotnet_uplayeredwnd.php
>>800
そもそも>>796みたいな告なんか出ないと思うけど...
何か盛大に勘違いしてる予感...
Formはウィンドウ全体のアルファはOpacityで指定できるけど、
背景だけ透過させるとかは簡単にはできなかったような
http://yellow.ribbon.to/~azumaya/doc_dotnet_uplayeredwnd.php
>>800
そもそも>>796みたいな告なんか出ないと思うけど...
何か盛大に勘違いしてる予感...
804デフォルトの名無しさん (ワッチョイ b6ed-RYnA)
2018/05/22(火) 13:05:58.78ID:7Riaak3V0805デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 13:21:14.65ID:svO22mue0806デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 13:55:20.14ID:svO22mue0 もともとスタートアップだったform1からform2にスタートアップを変更したいと考えています。
Program.csの
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new InitialSettingForm1());
}
のForm1をForm2に変更したのですがどうもうまくいきません。
Program.csの
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new InitialSettingForm1());
}
のForm1をForm2に変更したのですがどうもうまくいきません。
807デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 14:00:09.60ID:svO22mue0 form1が出てからform2が表示されているような…。
試しに
public ExaminationForm1()
{
InitializeComponent();
MessageBox.Show("a");
}
と入れてみると
メッセージボックスが表示→okをクリック→form2が表示
となります。
他にも設定しなければいけないところがあるのでしょうか・・・。
試しに
public ExaminationForm1()
{
InitializeComponent();
MessageBox.Show("a");
}
と入れてみると
メッセージボックスが表示→okをクリック→form2が表示
となります。
他にも設定しなければいけないところがあるのでしょうか・・・。
808デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 14:01:17.37ID:svO22mue0 また変なことやってるのかなぁ・・・。
809デフォルトの名無しさん (ワキゲー MM42-wBtv)
2018/05/22(火) 14:48:09.94ID:oCYWBo6GM InitialSettingなのかExaminationなのかどっちだよ
ExaminationForm1のコンストラクタにブレークポイントおいて実行
ブレークしたら呼び出し履歴を確認する
ExaminationForm1のコンストラクタにブレークポイントおいて実行
ブレークしたら呼び出し履歴を確認する
810デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 17:11:30.57ID:svO22mue0 >>809
Debugで確認していったらどうもインスタンスの参照を渡せていないようです。
Debugで確認していったらどうもインスタンスの参照を渡せていないようです。
811デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 17:12:13.75ID:svO22mue0 public partial class Form1 : Form
{
Form2 form2;
Class1 class1;
public Form1()
{
InitializeComponent();
form2 = new Form2();
form2.Show();
class1 = new Class1();
form2.Pointer = class1;
}
}
{
Form2 form2;
Class1 class1;
public Form1()
{
InitializeComponent();
form2 = new Form2();
form2.Show();
class1 = new Class1();
form2.Pointer = class1;
}
}
812デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 17:12:47.68ID:svO22mue0 public partial class Form2 : Form
{
Class1 class1;
public Class1 Pointer
{
set
{
class1 = value;
}
}
public Form2()
{
InitializeComponent();
int i = class1.fuga();
MessageBox.Show(i.ToString());
}
}
{
Class1 class1;
public Class1 Pointer
{
set
{
class1 = value;
}
}
public Form2()
{
InitializeComponent();
int i = class1.fuga();
MessageBox.Show(i.ToString());
}
}
813デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 17:13:21.01ID:svO22mue0 public class Class1
{
public int hoge = 2222;
public int fuga()
{
return hoge;
}
}
{
public int hoge = 2222;
public int fuga()
{
return hoge;
}
}
814デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/22(火) 17:16:54.99ID:svO22mue0 Form2で
int i = class1.fuga();
みたいなclass1のメソッドを使う命令を書くと、実行時にForm1もForm2も表示されずに終了になります。
Form2にclass1の参照をきちんと渡せていないようなのですが、どこが悪いんでしょう・・・。
int i = class1.fuga();
みたいなclass1のメソッドを使う命令を書くと、実行時にForm1もForm2も表示されずに終了になります。
Form2にclass1の参照をきちんと渡せていないようなのですが、どこが悪いんでしょう・・・。
815デフォルトの名無しさん (アウアウエー Sa02-vTsT)
2018/05/22(火) 17:33:33.27ID:2EZjLjzja816デフォルトの名無しさん (ワキゲー MM42-wBtv)
2018/05/22(火) 17:34:55.39ID:oCYWBo6GM 806から811で全然別物の質問になってるんだけど
Form1のコンストラクタの先頭とForm2のコンストラクタの先頭にそれぞれブレークポイントおいて
ブレークしたらF10キー1行ずつステップオーバーしていって
どういう順番で実行されてるか確認
Form1のコンストラクタの先頭とForm2のコンストラクタの先頭にそれぞれブレークポイントおいて
ブレークしたらF10キー1行ずつステップオーバーしていって
どういう順番で実行されてるか確認
817デフォルトの名無しさん (ラクッペ MMa5-0XvN)
2018/05/22(火) 20:59:34.16ID:36NNq4u4M うるせーな一度答えると決めたら最後までニコニコヅラで相手しろよクソハゲ
818デフォルトの名無しさん (ワッチョイ 9dc3-NEzo)
2018/05/22(火) 21:22:06.95ID:sZHy65Kr0819デフォルトの名無しさん (ワッチョイ 55da-XbkE)
2018/05/22(火) 21:56:59.84ID:nVwte2qB0820デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/23(水) 00:14:46.31ID:IEWpo6Tg0 >>819
ありがとうございます。m(__)m
その通りでした。
一個づつ追っていけば分かるはずなんですけど、
自分では思い込みがあって気づきませんでした。
本当に助かりました。
ありがとうございました。
ありがとうございます。m(__)m
その通りでした。
一個づつ追っていけば分かるはずなんですけど、
自分では思い込みがあって気づきませんでした。
本当に助かりました。
ありがとうございました。
821デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/23(水) 00:17:07.19ID:IEWpo6Tg0 >>815
すいません。
文章の書き方が悪かったです。
812の下から4行目のように
Form2で
int i = class1.fuga();
class1のメソッドを使う命令を書くと、実行時にForm1もForm2も表示されずに終了になります。
と書くべきでした。
すいません。
文章の書き方が悪かったです。
812の下から4行目のように
Form2で
int i = class1.fuga();
class1のメソッドを使う命令を書くと、実行時にForm1もForm2も表示されずに終了になります。
と書くべきでした。
822デフォルトの名無しさん (ワッチョイ 7696-NEzo)
2018/05/23(水) 00:18:47.23ID:IEWpo6Tg0 >>816
これまたすいません、ブレークポイントで見て言ったら画面の生成順は問題ないことが分かって、
インスタンスの参照が渡っていないことが原因と分かり。811-813みたいな最小コードで実験してました。
これまたすいません、ブレークポイントで見て言ったら画面の生成順は問題ないことが分かって、
インスタンスの参照が渡っていないことが原因と分かり。811-813みたいな最小コードで実験してました。
823デフォルトの名無しさん (ワッチョイ 75eb-/w+O)
2018/05/23(水) 10:08:41.93ID:N3UaVe1J0 中学生ぐらいだったら教えてやってもいいけど、あんたいくつよ?
824デフォルトの名無しさん (ワッチョイ 76e8-HRP5)
2018/05/23(水) 10:10:09.13ID:QWeWgJFJ0 不安なメソッド内じゃ全部TryCatchで囲っちゃった方が良いです?
825デフォルトの名無しさん (ワッチョイ 91e3-HRP5)
2018/05/23(水) 10:18:50.74ID:Mh8q82UX0 catch内で例外を握りつぶせば完璧
826デフォルトの名無しさん (ワッチョイ 05b5-+lsE)
2018/05/23(水) 13:00:21.42ID:mO/AejLg0 メインの処理全体をtry〜catchで括るだけさ。
827デフォルトの名無しさん (バットンキン MMea-AGvl)
2018/05/23(水) 18:48:37.98ID:hVcgEIrnM ジェネリクスのListやHashSetを良く使うのですが、これで用が足りてしまうので自作までしたことありません
出来る企業や個人はバリバリ自作するのでしょうか
出来る企業や個人はバリバリ自作するのでしょうか
828デフォルトの名無しさん (ブーイモ MMa1-mCTX)
2018/05/23(水) 19:00:48.43ID:iQ1n/QEKM829デフォルトの名無しさん (ブーイモ MMfa-RkHC)
2018/05/23(水) 23:29:00.27ID:l9NA/114M ありもの使う方が良いと思うよ
830デフォルトの名無しさん (ワッチョイ c9b3-Ga4E)
2018/05/24(木) 00:22:57.92ID:Pwy3p0jE0 ありものでどうしても駄目な理由がある場合のみ、仕方なく自作だわね
831デフォルトの名無しさん (アウアウウー Sadd-GmoF)
2018/05/24(木) 00:28:40.71ID:crQGHj+ea >>830
それも注意が必要だけどね
視野狭窄な小手先の技術に拘るプログラマは、くだらない問題に拘って「どうしても駄目だ」と思い込む(思い込もうとする)傾向がある
大抵そういうケースでは、視野を広げるとそもそも無理に手間をかけてまで解決する必要のない問題であることが多い
それも注意が必要だけどね
視野狭窄な小手先の技術に拘るプログラマは、くだらない問題に拘って「どうしても駄目だ」と思い込む(思い込もうとする)傾向がある
大抵そういうケースでは、視野を広げるとそもそも無理に手間をかけてまで解決する必要のない問題であることが多い
832デフォルトの名無しさん (ワッチョイ d9d2-2rS7)
2018/05/24(木) 00:36:35.91ID:O9jHVcOl0 Dictionary クラスを継承して使いたくて、
これの各種インターフェイスを実装した中身 Dictionary クラスのラッパーを作った事あるなあ。
今思えば若かった。
これの各種インターフェイスを実装した中身 Dictionary クラスのラッパーを作った事あるなあ。
今思えば若かった。
833デフォルトの名無しさん (スププ Sd33-l+s8)
2018/05/24(木) 07:54:06.51ID:YzRB3Rzod834デフォルトの名無しさん (ワッチョイ 39b5-cBpb)
2018/05/24(木) 14:34:00.01ID:q7DgX+HL0 たいていは英語力の無さに原因があるんだよな。
その機能を見つけられないとかだからさ。
その機能を見つけられないとかだからさ。
835デフォルトの名無しさん (ワンミングク MMd3-oiRH)
2018/05/24(木) 15:02:55.06ID:AHiLgPdDM コンソールアプリです。
今までに自分が吐き出した標準出力を自分で取得する事は可能でしょうか?
このアプリ(A)は主に他のアプリ(B)から実行されることを想定しています。Aは普通にConsole.WriteLineで出力し、BがProcess.StandardOutput.ReadToEndで取得、ログを残します。
A単体で実行してログも残したい要求があります。 Console.WriteLineと同時にファイルに出力すればいいのですが、最後に一括で取得できればスマートかなと思ったのですが、いかがでしょうか?
今までに自分が吐き出した標準出力を自分で取得する事は可能でしょうか?
このアプリ(A)は主に他のアプリ(B)から実行されることを想定しています。Aは普通にConsole.WriteLineで出力し、BがProcess.StandardOutput.ReadToEndで取得、ログを残します。
A単体で実行してログも残したい要求があります。 Console.WriteLineと同時にファイルに出力すればいいのですが、最後に一括で取得できればスマートかなと思ったのですが、いかがでしょうか?
836デフォルトの名無しさん (ドコグロ MM15-PUmD)
2018/05/24(木) 16:59:57.59ID:B2m5C+ouM >>835
ウィンドウアプリです
ウィンドウアプリです
837デフォルトの名無しさん (ワッチョイ 39b5-cBpb)
2018/05/24(木) 17:02:19.57ID:q7DgX+HL0 両方に出力する関数作って、その関数に置き換える事すら出来ない無能に何をアドバイスしろと?
838デフォルトの名無しさん (ワッチョイ 8b81-sRwd)
2018/05/24(木) 17:11:45.68ID:iQu+wqIP0 Windowsで使えるteeコマンド探した方が早いんじゃねえか
839デフォルトの名無しさん (ワキゲー MM63-A1Qr)
2018/05/24(木) 17:19:25.14ID:EdBeTbDkM PowerShellならデフォルトで用意されてるよ!>tee
840デフォルトの名無しさん (ワンミングク MMd3-oiRH)
2018/05/24(木) 17:19:52.49ID:AHiLgPdDM841デフォルトの名無しさん (スップ Sd33-/UMR)
2018/05/24(木) 19:35:28.68ID:MnVBsXE4d TraceSource
842デフォルトの名無しさん (アウアウオー Sa63-9v30)
2018/05/24(木) 20:33:40.60ID:hof73DG2a 正直何言ってるのかよく分からんけど、普通にリダイレクトするだけのような...
っていうか、普通はコマンドライン引数で出力先を切り替えるように作ると思うんだけど...
っていうか、普通はコマンドライン引数で出力先を切り替えるように作ると思うんだけど...
843デフォルトの名無しさん (ワッチョイ 8b81-sRwd)
2018/05/24(木) 23:35:59.30ID:iQu+wqIP0 >>839
へえ知らなかったな
へえ知らなかったな
844デフォルトの名無しさん (ワッチョイ c9b3-Ga4E)
2018/05/25(金) 00:27:44.75ID:j/dB1L1+0 PowerShellはもっと流行るべき
845デフォルトの名無しさん (アウアウウー Sadd-GmoF)
2018/05/25(金) 00:39:09.38ID:N3c6aWbUa PowerShellとか罰ゲームだろ
インタラクティブシェルとしては悪くないけど、まとまったスクリプト書こうとすると大嫌いになる
Add-TypeでインラインでC#書いたほうがマシだわ
特にC#erはソースの見た目がなんとなく似てるだけに地獄を見るんだよ
インタラクティブシェルとしては悪くないけど、まとまったスクリプト書こうとすると大嫌いになる
Add-TypeでインラインでC#書いたほうがマシだわ
特にC#erはソースの見た目がなんとなく似てるだけに地獄を見るんだよ
846デフォルトの名無しさん (スププ Sd33-l+s8)
2018/05/25(金) 12:59:33.01ID:RzxaIECOd >>842
名前付パイプでOkだよな
名前付パイプでOkだよな
847デフォルトの名無しさん (ワッチョイ 39b5-cBpb)
2018/05/26(土) 00:52:48.69ID:grpyMBkE0 アプリ側で完結してないと、スクリプト操作とか変なバッチ叩かせてアプリ起動とか怪し過ぎるだろ。
業務アプリじゃねーんだw
業務アプリじゃねーんだw
848デフォルトの名無しさん (ワッチョイ 8b96-vxiR)
2018/05/28(月) 00:24:44.02ID:2eqT73MR0 if (-100 <= clickPointXTemp && clickPointXTemp <= 100)
{
clickPointX[clickNumber] = clickPointXTemp;
MessageBox.Show(clickPointX[clickNumber].ToString() + "%");
MessageBox.Show(clickPointX[0].ToString() + "%");
MessageBox.Show(clickPointX[1].ToString() + "%");
MessageBox.Show(clickPointX[2].ToString() + "%");
clickNumber++;
}
{
clickPointX[clickNumber] = clickPointXTemp;
MessageBox.Show(clickPointX[clickNumber].ToString() + "%");
MessageBox.Show(clickPointX[0].ToString() + "%");
MessageBox.Show(clickPointX[1].ToString() + "%");
MessageBox.Show(clickPointX[2].ToString() + "%");
clickNumber++;
}
849デフォルトの名無しさん (ワッチョイ 8b96-vxiR)
2018/05/28(月) 00:29:53.74ID:2eqT73MR0 クリックしてカーソルが-100<=clickPointXTemp<=100の位置にあるときに配列にその値を代入させているのですが、
クリックするとその場で配列に代入できても次のクリックで0になってしまいます。
1回目クリック
clickPointXTemp=10
[0]=10
[1]=0
[2]=0
2回目クリック
clickPointXTemp=30
[0]=0
[1]=30
[2]=0
2回目クリック
clickPointXTemp=100
[0]=0
[1]=0
[2]=100
なんでだろ・・・。
クリックするとその場で配列に代入できても次のクリックで0になってしまいます。
1回目クリック
clickPointXTemp=10
[0]=10
[1]=0
[2]=0
2回目クリック
clickPointXTemp=30
[0]=0
[1]=30
[2]=0
2回目クリック
clickPointXTemp=100
[0]=0
[1]=0
[2]=100
なんでだろ・・・。
850デフォルトの名無しさん (ワッチョイ 8b96-vxiR)
2018/05/28(月) 00:30:12.40ID:2eqT73MR0 5時間ぐらい悩み中。。。
851デフォルトの名無しさん (アウアウカー Sa95-9DOT)
2018/05/28(月) 00:33:24.89ID:SRIgyUF4a データベースを使わないで、インデックスが共通する複数のデータ配列を作りたいときってどういう風な実装が最適なんでしょうか
var A = new int[x]
var B = new int[x]
var C = new int[x]
・
・
・
var E = new int[x]
みたいな感じです
var A = new int[x]
var B = new int[x]
var C = new int[x]
・
・
・
var E = new int[x]
みたいな感じです
852デフォルトの名無しさん (ワッチョイ 8bc9-vxiR)
2018/05/28(月) 00:33:25.48ID:MfVpzBU40 スコープが原因だろうから全体のソース出さないとエスパーだらけの回答になるよ
853デフォルトの名無しさん (アウアウオー Sa63-9v30)
2018/05/28(月) 01:08:05.78ID:dlEIDhlNa >>851
struct Hoge
{
int A;
int B;
int C;
int D;
int E;
}
....
var hogeArray = new Hoge[100];
struct Hoge
{
int A;
int B;
int C;
int D;
int E;
}
....
var hogeArray = new Hoge[100];
854デフォルトの名無しさん (アウアウカー Sa95-9DOT)
2018/05/28(月) 07:52:50.79ID:Mf7CKKuIa855デフォルトの名無しさん (オッペケ Sr05-cS+N)
2018/05/28(月) 12:27:04.88ID:YifI+gJdr 誰か>>852のエスパーたのむ
856デフォルトの名無しさん (ワキゲー MM63-A1Qr)
2018/05/28(月) 13:02:33.05ID:PWPrnTKxM >>848-849へのレスだろ
857デフォルトの名無しさん (ワントンキン MMd3-RIxT)
2018/05/28(月) 13:47:49.05ID:i/nkRhbIM858デフォルトの名無しさん (ブーイモ MMcb-hdXW)
2018/05/28(月) 15:55:38.64ID:W2eXy6T5M エスパー能力ないと5chはこなせない
859デフォルトの名無しさん (スッップ Sd33-FAoy)
2018/05/28(月) 20:32:45.18ID:0z7zyrSed 複数のクラスで共通の変数定数を外出しして、
その変数クラスを継承するのって良し悪しで言うとどうでしょうか
is aなのかちと微妙な感じです
内臓名クラスを継承して動物クラスを作ってるような
has aなのでオブジェクトとして渡すべきですか?
その変数クラスを継承するのって良し悪しで言うとどうでしょうか
is aなのかちと微妙な感じです
内臓名クラスを継承して動物クラスを作ってるような
has aなのでオブジェクトとして渡すべきですか?
860デフォルトの名無しさん (ブーイモ MM33-GmoF)
2018/05/28(月) 21:46:19.79ID:rs0fZbm/M >>859
共通の変数などという低い抽象度でクラス設計を考えるのがそもそも間違ってる
実装からクラスを考えると必ず破綻するから、君の今の考え方のまま進む限りはいかなる選択肢も不正解
とはいえ最初から抽象度を上げて設計しろといっても初心者には無理な話だから、気にせず自分の思うように作ればいい
一通りモノ作れるようになったらオブジェクト指向モデリングの書籍を読むことをお勧めする
共通の変数などという低い抽象度でクラス設計を考えるのがそもそも間違ってる
実装からクラスを考えると必ず破綻するから、君の今の考え方のまま進む限りはいかなる選択肢も不正解
とはいえ最初から抽象度を上げて設計しろといっても初心者には無理な話だから、気にせず自分の思うように作ればいい
一通りモノ作れるようになったらオブジェクト指向モデリングの書籍を読むことをお勧めする
861デフォルトの名無しさん (ワッチョイ 13e3-xvti)
2018/05/28(月) 21:51:33.12ID:I0m/gtVC0 オブジェクト指向プログラミングしない方がいいもの作れるよ
関数で組む方法を極めた方がいい
関数で組む方法を極めた方がいい
862デフォルトの名無しさん (ワッチョイ d360-Ockd)
2018/05/28(月) 21:56:33.33ID:dVAXJXVu0863デフォルトの名無しさん (ブーイモ MM33-GmoF)
2018/05/28(月) 22:18:11.40ID:rs0fZbm/M864デフォルトの名無しさん (ワッチョイ d360-Ockd)
2018/05/28(月) 22:21:17.59ID:dVAXJXVu0 >>863
キーワード提供、感謝しています
キーワード提供、感謝しています
865デフォルトの名無しさん (ブーイモ MMcd-DqgS)
2018/05/29(火) 12:48:47.90ID:dUPfr/v4M どのプログラム言語を選ぶかでオブジェクト指向モデルの実現方法がかなり違う
866デフォルトの名無しさん (アウアウウー Sadd-GmoF)
2018/05/29(火) 12:57:47.07ID:Xt8fAcdVa >>863の本くらいの抽象度になると実装方法にはほとんど依存しないよ
それどころかオブジェクト指向モデルすらも方法論全体の中では下層の方に位置付けられる
それどころかオブジェクト指向モデルすらも方法論全体の中では下層の方に位置付けられる
867デフォルトの名無しさん (ワッチョイ 13e0-SoOk)
2018/05/29(火) 19:04:25.63ID:QoecqRn60 とりあえず入門レベルが終わったんだけど次はeffective c#4.0っての読めばいいですか?
868デフォルトの名無しさん (ワンミングク MMd3-q2Ej)
2018/05/29(火) 19:05:12.69ID:upesQ40yM 6.0 7.0のでてるからそっちでいいよ
869デフォルトの名無しさん (ワッチョイ 13e0-SoOk)
2018/05/29(火) 19:28:28.39ID:QoecqRn60 more effective C# 6.0 7.0ですか?
moreとついてるので前の本を読む必要があるかと思っていたんですが大丈夫そうならそちらを購入しようかと思います
moreとついてるので前の本を読む必要があるかと思っていたんですが大丈夫そうならそちらを購入しようかと思います
870デフォルトの名無しさん (ワッチョイ fb8a-HY9j)
2018/05/29(火) 21:07:37.85ID:FUNbZ4ty0 フォーム間でのデータのやりとりはどうするのが一般的なのでしょうか?
例えば、Form2の表示と同時に、Form1に入力済みのデータをForm2に表示させる場合、今は以下のようにしています。
class Form1
{
public object Data{get; set;}
var form2 = new Form2();
form2.Parent = this;
}
class Form2
{
public Form Parent{get; set;}
Load()
{
this.Data = Parent.Data;
}
}
例えば、Form2の表示と同時に、Form1に入力済みのデータをForm2に表示させる場合、今は以下のようにしています。
class Form1
{
public object Data{get; set;}
var form2 = new Form2();
form2.Parent = this;
}
class Form2
{
public Form Parent{get; set;}
Load()
{
this.Data = Parent.Data;
}
}
871デフォルトの名無しさん (ワッチョイ 8b9a-vxiR)
2018/05/29(火) 21:31:23.00ID:T0OOxyUA0 >>870
一般的とかいいやりかたって聞かれると逆に難しいんで自分のやりやすい形で
https://dobon.net/vb/dotnet/form/accessanotherformdata.html
コンストラクタやメソッドの引数でも渡せるし
一般的とかいいやりかたって聞かれると逆に難しいんで自分のやりやすい形で
https://dobon.net/vb/dotnet/form/accessanotherformdata.html
コンストラクタやメソッドの引数でも渡せるし
872デフォルトの名無しさん (ワッチョイ 518a-RIxT)
2018/05/29(火) 22:26:37.07ID:LfCUNSAB0 >>869
Apressお勧め
Apressお勧め
873デフォルトの名無しさん (ワッチョイ 13d2-XWWR)
2018/05/29(火) 22:58:12.01ID:G7p9dius0874デフォルトの名無しさん (ワッチョイ 39b5-cBpb)
2018/05/29(火) 23:11:52.08ID:5CF0lkGw0 ビジュアルスタジオでC#使ってると、どんどんコードスタイルが簡略化されていくんだよな。
875デフォルトの名無しさん (ワッチョイ 1311-Du++)
2018/05/30(水) 13:41:56.71ID:Bf3z8rw50 SocketクラスのBeginConnectとかBeginReceiveとかに渡すコールバック関数を
staticで書いてあるのとそうでないのと両方見かけるんですけど
どっちが良いんでしょう?
staticで書いてあるのとそうでないのと両方見かけるんですけど
どっちが良いんでしょう?
876デフォルトの名無しさん (ワッチョイ 39b5-cBpb)
2018/05/30(水) 14:44:18.44ID:LltEUg5c0 まあ、C#ならコールバックは登録解除を明示的に行うからスタティックである必要は無いけどな。
でもこれがイベントハンドラからのデリゲートなら話は別だ。
でもこれがイベントハンドラからのデリゲートなら話は別だ。
877デフォルトの名無しさん (ブーイモ MM33-GmoF)
2018/05/30(水) 14:47:38.89ID:WVM+AecNM >>875
そのSocketオブジェクトに合わせるのが正解
Socketを生で使うサンプルってスキルの低い業務ドカタが書いてたり書かれた時代が古かったりすることが多いので、
C#をよく理解してなくてCやVBの感覚でstaticにしないといけないと思ってるようなのが多い
そのSocketオブジェクトに合わせるのが正解
Socketを生で使うサンプルってスキルの低い業務ドカタが書いてたり書かれた時代が古かったりすることが多いので、
C#をよく理解してなくてCやVBの感覚でstaticにしないといけないと思ってるようなのが多い
878デフォルトの名無しさん (ワッチョイ 1311-Du++)
2018/05/30(水) 15:03:40.50ID:Bf3z8rw50879デフォルトの名無しさん (ワッチョイ 4e57-msj4)
2018/05/31(木) 15:19:11.21ID:AbqPsR3A0 TextBoxか、MaskedTextBoxに単位をつけたい。
小数点有りや無し、-の数値を入力できたりするものってできますか?
-2℃
14℃
25.5℃
2.5℃
小数点有りや無し、-の数値を入力できたりするものってできますか?
-2℃
14℃
25.5℃
2.5℃
880デフォルトの名無しさん (ドコグロ MM19-5Q+M)
2018/05/31(木) 18:15:14.92ID:Zw7Yk0+cM テキストボックスの横にラベルで単位でも書いておこうぜ
□㌕
□㌕
881デフォルトの名無しさん (ドコグロ MM19-5Q+M)
2018/05/31(木) 18:16:46.93ID:Zw7Yk0+cM 小数点は
□.□㌕
な
□.□㌕
な
882デフォルトの名無しさん (アウアウカー Sa5d-GynM)
2018/05/31(木) 19:19:02.19ID:0ajP7AA9a >>879
TextBoxクラスを継承
TextBoxクラスを継承
883デフォルトの名無しさん (ワッチョイ d69a-msj4)
2018/05/31(木) 20:26:49.48ID:9/5XjJFR0884デフォルトの名無しさん (ブーイモ MMf1-CKCa)
2018/05/31(木) 21:28:20.09ID:ygkZdVXVM885デフォルトの名無しさん (ワッチョイ 4e57-msj4)
2018/06/01(金) 09:05:55.18ID:azdekr4p0 説明不足ごめんなさい。
出力ですが、最終的にはTextBoxの枠ごと印刷したいと考えております。
883の言う単位の入力補完だと思います。
MaskedTextBoxのマスクに####℃と記入し、
「-24.4」等のデータをデータベースから取り出して、入れたところMaskedTextBox.Textが244℃となってしまいました。
このテキストボックスを小数点有りの場合、なしの場合、負の符号が有りの場合なしの場合、「----」の場合、
1桁から5桁+「℃」としてTextBox.Textに出力したいと考えております。
できますか?
出力ですが、最終的にはTextBoxの枠ごと印刷したいと考えております。
883の言う単位の入力補完だと思います。
MaskedTextBoxのマスクに####℃と記入し、
「-24.4」等のデータをデータベースから取り出して、入れたところMaskedTextBox.Textが244℃となってしまいました。
このテキストボックスを小数点有りの場合、なしの場合、負の符号が有りの場合なしの場合、「----」の場合、
1桁から5桁+「℃」としてTextBox.Textに出力したいと考えております。
できますか?
886デフォルトの名無しさん (ラクッペ MM35-gTal)
2018/06/01(金) 09:13:09.12ID:gkm5sPLjM TextBoxクラスを継承して自前で実装すればできる
887デフォルトの名無しさん (アウアウカー Sa5d-GynM)
2018/06/01(金) 09:47:05.22ID:czZmZo8za TextBoxクラスを継承してTextプロパティを上書き
書式とか単位を属性に持たせれば汎用的に使える。
コピペされたときの場合も考慮すること
書式とか単位を属性に持たせれば汎用的に使える。
コピペされたときの場合も考慮すること
888[879] (ワッチョイ 4e57-msj4)
2018/06/01(金) 09:58:02.26ID:azdekr4p0 ありがとうございます。
なんとなく、それっぽいものが作れそうです。
なんとなく、それっぽいものが作れそうです。
889デフォルトの名無しさん (ワキゲー MM62-03s2)
2018/06/01(金) 10:22:08.86ID:XLd38QjBM ユーザーコントロールでボーダーなしテキストボックスとラベル並べた方が楽な気がする
890デフォルトの名無しさん (ワッチョイ b117-NLsb)
2018/06/01(金) 18:06:59.69ID:TnI3eVXu0 テキストボックスの描画や挙動を弄るの面倒くさいから汎用性を求めるんなら InputMan 買った方がいいよ
891デフォルトの名無しさん (ブーイモ MM9a-dURk)
2018/06/01(金) 18:10:44.74ID:UBye49NJM ライセンスとかテクリスとか面倒だから買わない
892デフォルトの名無しさん (ワントンキン MMb5-67BG)
2018/06/01(金) 18:21:51.24ID:S7DUtxKdM NuGetで参照できるオープンソースのWinFormsリッチコンポーネントって何が有名なの?
893デフォルトの名無しさん (ドコグロ MM19-5Q+M)
2018/06/01(金) 20:17:26.63ID:dZV2tAFxM nugetは俺の鬼門
894デフォルトの名無しさん (ワッチョイ 018a-75sl)
2018/06/01(金) 21:28:02.83ID:naL+ZRGN0 僕の半蔵門
895デフォルトの名無しさん (ワッチョイ fae3-mRcc)
2018/06/01(金) 23:18:54.61ID:fWGAwsr30 前門の虎 肛門の狼
896デフォルトの名無しさん (ワッチョイ d103-Y2aB)
2018/06/02(土) 00:25:46.86ID:A4SZL/oE0 寒っ
897デフォルトの名無しさん (ワッチョイ 21e3-5Q+M)
2018/06/02(土) 10:06:40.82ID:QJbZaU5f0 c#で穴ぼこメモリにしないように組むのって不可能?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【無言】中国怒らせた高市首相→1週間だんまり、国民に実害も説明なし 中国問題を避けてスルー… ★5 [BFU★]
- 「日本はパンダがいなくなる状況に直面するだろう」 中国メディア、専門家の見方伝える [♪♪♪★]
- 止まらぬ「日本売り」 高市財政への懸念で進む金利上昇と円安 ★2 [蚤の市★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★12 [樽悶★]
- 【速報】10月の消費者物価3.0%上昇 [蚤の市★]
- 【コメ】価格「5キロ4316円」で最高値を更新…「おこめ券」が解決につながらない根本的な理由 コメ農家が危機感をあらわにする「離農」 [ぐれ★]
- 愛国保守、日本を本気で潰しにかかる [819729701]
- 高市早苗、会食せず議員宿舎に籠って勉強の毎日「飲んでる暇があれば、政策を練り、資料を読みたい」 [485187932]
- 【高市速報】日本の政治家も国民も「実利を取る」って選択ができないバカしかいないのか? [369521721]
- 【悲報】Suica、セキュリティを突破されたのが販売されはじめる [347751896]
- 東大名誉教授「中国は誤った宣伝を繰り広げ、対立を煽り、経済の失敗による国内の不満を日本に向けている」 [903292576]
- 【悲報】米問屋「助けて!米がとんでもない量余ってるのに全然売れないの!でも絶対値下げしたくない…どうしたらいいの…」 [802034645]
