0からの、超初心者C#相談室
何にも知らない0からの出発、超初心者のためのC#相談室 C#でもWIN32APIが使えるみたいなのですが(関数名が若干変わってる?) そういうのって何処で調べられますか? WriteProcessMemory→WriteMemory とか関数名が若干変わってるみたいですが >>44 自分でラッパー作る場合にはdllimportして直接win32apiたたくのでメソッド名が 変わることはないよ win32apiのラッパーライブラリとかだと名前変えていることもあるかもしれないけど、 そういう場合にはライブラリのリファレンスを見るしかないよ 別のスレでお前がやろうとしてることは古い WinFormsやれって言われたのでそれをやりたいと思ってるのですが WPFとかASP.NETとか色々あってWinFormsって具体的に何か分からなくて困ってます これだよって本があれば教えていただけると助かります やさしいC#に載ってる↓みたいなコードはWinFormsとは別なんでしょうか public void Main(){ Application.Run(new Sample()); public Sample(){...............} https://ideone.com/eUwGbP こういうのをやるのはもう古いのでしょうか? 右も左も分からないからよく分からんです… 「winforms」「winforms wpf 違い」などで検索! 知らない単語は、何でも検索すれば良い 今朝プログラム始めたばかりのクソど素人なんだが、YouTubeの動画の通りの内容入れてるのに動かない…… Unityで使うプログラム作ってて、数字入れても色が変わらんぞ https://i.imgur.com/clzs7z6.jpg https://i.imgur.com/J8BeA7q.jpg >>50 どの動画? 変数名speedって書いてあるけど色を変えるためにいじるの本当にそこで合ってるか? >>51 https://youtu.be/muOOLwfbjfs これ でも一応?解決はした 色は変わってないけど処理は正常に動いてる ニコニコ動画の弾幕ツールを作りたいのですが何か参考になる動画や資料等ないでしょうか? 別のスレで聞いたら使えそうなクラスとか駆使して作れば良いって言われたけどプログラミング自体入門者なんで検討も付かないです 外人のC#動画漁ってますが中々目的のものが見つからないです スクリプト言語とかも学ばないと出来んのでしょうか? https://sites.google.com/site/arktoybox/app https://sites.google.com/site/nantonaku999/home/fairu-cang-ku2/fairu-cang-ku-2 >>55 弾幕ツール ソースで検索しても出ないので教えてほしいです 海外とかこういう似たようなツールたくさんありそうですが なんて検索すれば出てくるか分かりません 弾幕 ソース c# ぐらいのキーワードで出てくるけど C#とDXライブラリで弾幕STGを作ってみよう! Part1 準備編+C言語の復習編 とか。中身を見ていないけど 上と下の書き方って意味同じなんでしょうか? 読んでる参考書は下の書き方なんですが古い? public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } } ///////////////////////////////////////////....... class Sample : Form { public static void Main() { Application.Run(new Sample()); } public Sample() { this.Click+=... } } マウスをクリックしたところから離したところまで円を描くだけのプログラムなんですが endposからstartposを引くとなぜ幅になるのか分からないので教えてほしいです https://ideone.com/3a6auq 四角形の内接楕円を書くAPIを 使っているから マウス移動の矩形を計算している >>64 レスありがとうございます マウスの移動した距離から開始地点を引くと何故図形の高さと幅になるのかイメージ付かないです 開始点と終了点の距離はどうやったら求まる? 更に都市距離だとどうなるか?って話 画面(の一部)を繰り返し描き換えるときに Graphicsを何度も再取得、破棄するのは非効率なので フィールド変数に保存しておいて再利用するようにしていますが 本来はどのように処理するのが正しいでしょうか? ビットマップを保存してpicture.imageに代入 >>68 実際にコード示して説明してもらわないと「非効率」がどういうことなのか「本来」がどんな条件のことなのかわからない。 とりあえず頻繁に設定を変えるものをフィールド変数にして使いまわすのは不具合の原因になりやすい >>69 おまえは何を言っているんだ Graphics g; void begin(){ g = Graphics.FromImage(this.picturebox1.Image); } void hoge(){ g.drawline(...) } void piyo(){ g.rectangle(...) } ...... ・ディスプレイは他のアプリで共有され使用される。 ・グラフィックオブジェクトは有限。 よって描画したらすぐ開放が基本動作。 bitmapからもGraphicsは作れるので 描画用のPictureと同じサイズの bitmap作って書きためておくのは定石 c#プログラマはコンピュータオタクの陰キャ世間の評価。 これ事実だけど。 金髪、イレズミ、冬でも半袖、電車では必ず優先席にすわり、タバコを吸う。 これぐらいの服装規定等を設けて、c#プログラマのイメージアップをはかるべき。 Visual Studio Community 2022 WinForms .NET6で カスタムコントロールを追加して[デザイン]画面を開くと Object reference not set to an instance of an object. エラーが出るのですが .NET6はカスタムコントロールを未サポートということなのか何なのか少し困っています 小数点以下の桁数を取得したい 整数になるまで繰返し10を掛けていく方法を考えたけど、丸め誤差が出て上手くいかない 文字列へ変換して文字数を数える方法だと、なにか負けた気がするし、指数表示のときに正常に動作しない 中学生か。高校になるとlog習うからそれまで寝て待て。 public void doXXX<T> (T t) where T : Control, ISomeInterface { //なんか、やる foreach(var c in t.Controls) { if(c is ISomeInterface c2) { doXXX(c2);//ここでコンパイルエラー } } } みたいな感じのメソッド作りたいんですけど、どうすればこのwhere制約突破できますか? dynamicにキャストすれば出来ますが、もっとスマートな方法ないですか? ぼんやりとした質問ですが、 Form1にWebView2が合ったとして、Form2でお気に入りを作って、Form2からForm1の WebView2にナビゲートしたいんです。 やってみたんですが、Form1にあるはずのWebViewがForm2から出てこないんです。 調べてみたらキャスト?とかいうのが必要らしくて、キャストはちんぷんかんぷんです。 コード書いておくので誰かお助けを~ 後Form1のWebview2にアクセスしようとしたら保護がかかってしまいました。 ランタイムを噛ませたりとかよく分かりません。 こんな超初心者の俺ですが、助けてください。 private async Task InitializeAsync() { await webView21.EnsureCoreWebView2Async(null); } private async void Form1_Load(object sender, EventArgs e) { await InitializeAsync(); webView21.CoreWebView2.Navigate("https://web.biz-prog.net/" ;); } private void button1_Click_1(object sender, EventArgs e) { Form2 f2 = new Form2(this); // 自フォームへの参照を渡す f2.Show(); // サブ・フォームを表示 } ここからForm2 public partial class Form2 : Form { Form1 f1; private object webView21; public Form2(Form1 f) { f1 = f; InitializeComponent(); } 試して見たんですが、オートコンプリートに((Form1)).webview2が出てきません NullReferenceExceptionには ArgumentNullException.ThrowIfNullみたいなやつはないの? >webView21 わらた こんなのまで21にすんのか おいマども、C#程度、教えてやれよw 彼らは君らの競合には決してならんからw >>46 ラッパ作るときは ドゥルルンポートせず、静的に作るだろ。C#でンポートするのをラッパとはいわん。 >>79 log だけ知ってても仕方ないぞ。 公式は 10進桁数 D= B(2進桁数) log102 の繰り上げ整数値 だが、log102 は浮動小数では完全表現できないので、 その時点で誤差を含んでるといえるが、ただし、公式は「繰り上げ整数値」だ。 つまり、結果が 999999999... 10000000....1 のような値にならない限りは、実用上問題なく、 log102 をかけて、偶然、9999999.... 10000....1 のような結果になることもまずないであろうから、誤差があっても問題がないということだ。 本題の 小数桁取得であるが、色々あるんだろうが、 IEE765 の浮動小数アルゴリズムの、逆をたどって、それを参考にすればよいではないか。 頭の体操になるな。頭の弱い漏れは少し時間かかるな。というかこんなもの作らなくても、数学演算系の関数は、 だいたいこういうのを加味した処理だろうけど。 >>78 やっぱり処理系によっては不可能だな。「〇桁までの入力」という仕様制限をかければ可能だが。 それよりも、C# には Decimal 型ってあるみたい。知らんかった。これは便利だな。構造体らしい。 仮数部が 12バイトらしい。 read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる