「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
探検
ふらっと C#,C♯,C#(初心者用) Part141
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/12/15(土) 10:46:07.45ID:Wu4Fx0bU215デフォルトの名無しさん
2019/07/28(日) 03:11:39.49ID:fFZFtxU0 >>213
英語OS環境でも日本語を表示したいので、MessageBoxだとだめなんです
英語OS環境でも日本語を表示したいので、MessageBoxだとだめなんです
216デフォルトの名無しさん
2019/07/28(日) 11:11:36.04ID:4n+BfbRN 英語OSで日本語表示
マルウェア臭しかしない
出来たとしてもやめたほうがいいw
マルウェア臭しかしない
出来たとしてもやめたほうがいいw
217デフォルトの名無しさん
2019/07/28(日) 11:52:47.97ID:KNp0wpVr 手元に英語版Windowsがないから確認できんけど、
Win9xの時代じゃないんだから英語版Windowsだからって日本語のメッセージが化けるとかないはずだと記憶してるけど
違ったっけ?
Win9xの時代じゃないんだから英語版Windowsだからって日本語のメッセージが化けるとかないはずだと記憶してるけど
違ったっけ?
218デフォルトの名無しさん
2019/07/28(日) 12:03:09.31ID:mCptNPRe 違う
バグはいくらでも造り込める
バグはいくらでも造り込める
219デフォルトの名無しさん
2019/07/28(日) 12:15:34.70ID:fFZFtxU0220デフォルトの名無しさん
2019/07/28(日) 12:20:10.64ID:0oO4pZNP >>219
他の画面を作るのと同じようにFormを自作してShowDialogするだけでいいよ
他の画面を作るのと同じようにFormを自作してShowDialogするだけでいいよ
221デフォルトの名無しさん
2019/07/28(日) 12:41:08.89ID:pP5stkUp >>217
Fontの指定できるのならそうだろうな
https://social.msdn.microsoft.com/Forums/vstudio/ja-JP/2f45e7d7-f4ba-47ee-a8e0-5b99255e69f7/12513124831247512540124721250812483124631247312398125131248312?forum=csharpgeneralja
ここの結論では>>215と同じ
>>215
ダイアログ用のフォームを作って「OK」と「Cancel」のボタンをクリックしたらDialogResultにDialogResult.OKかDialogResult.Cancelを入れてそのフォームをClose()するだけ
呼び出す側はMessageBoxのかわりにそのフォームを同じように呼び出せばいい
Fontの指定できるのならそうだろうな
https://social.msdn.microsoft.com/Forums/vstudio/ja-JP/2f45e7d7-f4ba-47ee-a8e0-5b99255e69f7/12513124831247512540124721250812483124631247312398125131248312?forum=csharpgeneralja
ここの結論では>>215と同じ
>>215
ダイアログ用のフォームを作って「OK」と「Cancel」のボタンをクリックしたらDialogResultにDialogResult.OKかDialogResult.Cancelを入れてそのフォームをClose()するだけ
呼び出す側はMessageBoxのかわりにそのフォームを同じように呼び出せばいい
222デフォルトの名無しさん
2019/07/28(日) 13:19:08.39ID:KNp0wpVr >>219
ほんと?
OSで設定されてるフォントが使用されるのはそう(デフォは昔ならTahoma、今は何だっけ?)
なんだけど、WindowsにはFontLinkって仕組みがあって、欧文以外の文字の場合は適当な
フォントが代わりに使用される仕組みになってるはずだと思うが...
まあどっちにしろサクッと自作しても大した手間ではないな
ほんと?
OSで設定されてるフォントが使用されるのはそう(デフォは昔ならTahoma、今は何だっけ?)
なんだけど、WindowsにはFontLinkって仕組みがあって、欧文以外の文字の場合は適当な
フォントが代わりに使用される仕組みになってるはずだと思うが...
まあどっちにしろサクッと自作しても大した手間ではないな
223デフォルトの名無しさん
2019/07/29(月) 21:48:22.76ID:CSar0obt224デフォルトの名無しさん
2019/07/30(火) 17:43:55.27ID:Q6VO+qJe なんのアニメ?
京アニ?
京アニ?
225デフォルトの名無しさん
2019/09/16(月) 20:31:20.79ID:MPbmz0IO Windowsのデスクトップアプリ作ってみたいんだけど、UWPじゃなくてWPF使った方がいいの?
226デフォルトの名無しさん
2019/09/16(月) 21:06:00.37ID:sRm+3JQL227デフォルトの名無しさん
2019/09/16(月) 21:16:27.82ID:MPbmz0IO228デフォルトの名無しさん
2019/09/16(月) 21:18:24.34ID:sRm+3JQL >>227
Visual Studio使ってWindows Formがクッソ楽とWPF使ったことない人からのアドバイスしとくw
Visual Studio使ってWindows Formがクッソ楽とWPF使ったことない人からのアドバイスしとくw
229デフォルトの名無しさん
2019/09/17(火) 01:14:09.81ID:jgnLyfJa >>223
グロ
グロ
230デフォルトの名無しさん
2019/09/17(火) 01:37:10.61ID:Scf7CR0a231デフォルトの名無しさん
2019/09/17(火) 07:20:33.53ID:Y3mVLTqr >>230
横だけど
日曜プログラマレベルでWinFormsでそれなりにDB連携の業務アプリを作って運用してはいるんだけど
今更WPFの勉強スタートして使いものになるかな?
つーか、1度作ったWinFormsをWPFにするには作り直しだよね・・・
横だけど
日曜プログラマレベルでWinFormsでそれなりにDB連携の業務アプリを作って運用してはいるんだけど
今更WPFの勉強スタートして使いものになるかな?
つーか、1度作ったWinFormsをWPFにするには作り直しだよね・・・
232デフォルトの名無しさん
2019/09/17(火) 08:34:01.71ID:gcZDzsnL >>231
Winformを使いこなしてる人が、今からWPFやっても得るものは少ないだろうね
WinformもWPFもやったことない人なら、どっちでも楽さは変わらない
あと、Winformなアプリでも一部だけWPFにすることもできるから、完全に作り直しとも限らないよ
Winformを使いこなしてる人が、今からWPFやっても得るものは少ないだろうね
WinformもWPFもやったことない人なら、どっちでも楽さは変わらない
あと、Winformなアプリでも一部だけWPFにすることもできるから、完全に作り直しとも限らないよ
233デフォルトの名無しさん
2019/09/17(火) 15:16:53.10ID:FM5jjTCY UWPも存在意義が無くなったしな・・・
234デフォルトの名無しさん
2019/09/17(火) 15:38:58.51ID:CU62bLm/ Win32をWindowsから追放してUWP化する計画は
やっぱりとん挫かw
ここ10年ぐらいMSはこんなことばっかりやってるね
やっぱりとん挫かw
ここ10年ぐらいMSはこんなことばっかりやってるね
235デフォルトの名無しさん
2019/09/17(火) 15:45:27.94ID:6kCNmbsv windowformから乗り換えるとしたら何?
236デフォルトの名無しさん
2019/09/17(火) 18:26:50.51ID:mt+5ew4N237デフォルトの名無しさん
2019/09/21(土) 10:57:39.89ID:y68BphyG238デフォルトの名無しさん
2019/09/21(土) 11:11:11.88ID:Sri5tnCE 内部文字コードのUTF8化と同時に整理して欲しいよなー
もうそろそろ互換性はいいだろ
もうそろそろ互換性はいいだろ
239デフォルトの名無しさん
2019/09/21(土) 12:06:27.59ID:ZIXe7ufx >内部文字コードのUTF8化
これは愚策
出入りはUTF8で良いけど
これは愚策
出入りはUTF8で良いけど
240デフォルトの名無しさん
2019/09/21(土) 19:53:37.95ID:y68BphyG SetWindowPosとかなあ
Posとか言ってSizeもZOrderもこれ使うとか初心者が勘違いするだろ
SetWndPosとSetWndSizeとSetWndZOrderに分けろや
ライブラリ作っとけばいいだけなんだけどさ
Posとか言ってSizeもZOrderもこれ使うとか初心者が勘違いするだろ
SetWndPosとSetWndSizeとSetWndZOrderに分けろや
ライブラリ作っとけばいいだけなんだけどさ
241デフォルトの名無しさん
2019/10/01(火) 08:54:20.74ID:AzXLfBCe xamlに別のxamlを挿入してその子要素にBindingってできないですかね?
242デフォルトの名無しさん
2019/10/01(火) 21:05:00.43ID:QXee0tMi243デフォルトの名無しさん
2019/10/10(木) 11:16:46.19ID:20GczcoB picturebox の中の画像の位置はどうやったら取得できるのでしょうか?
例えば、w 500 , h 500 の picturebox に w 300, h 500の画像が真ん中揃えで表示されているとき、x 100, y 0 みたいな値をとりたいのです。
画像の上に線とか図形とかを描画するための基準となる位置が欲しいのです。
ImageLocation プロパティで取れるかと思ったら、これはURL とかを指定するものでした。
例えば、w 500 , h 500 の picturebox に w 300, h 500の画像が真ん中揃えで表示されているとき、x 100, y 0 みたいな値をとりたいのです。
画像の上に線とか図形とかを描画するための基準となる位置が欲しいのです。
ImageLocation プロパティで取れるかと思ったら、これはURL とかを指定するものでした。
244デフォルトの名無しさん
2019/10/10(木) 11:24:30.46ID:dY7xsk31 自分で計算する
PictureBox::ImageRectangleFromSizeModeをリフレクションで呼び出す
上に何か描画するとかならImageプロパティは放棄して自分で全部描いた方が手っ取り早いかもね
PictureBox::ImageRectangleFromSizeModeをリフレクションで呼び出す
上に何か描画するとかならImageプロパティは放棄して自分で全部描いた方が手っ取り早いかもね
245デフォルトの名無しさん
2019/10/10(木) 23:41:17.72ID:20GczcoB >>244
c# でリフレクションというのは攻撃魔法をときどきはね返す防御魔法のようなものだと思うのですが、リフレクションを使う方法は具体的にどうするのでしょうか?
自力で計算する方法でとりあえずはなんとかなりそうです。
まだコード書いてないけど、画像の表示方法と画像サイズと pictureBox のサイズがわかるのでそこから計算できそうです。
縦と横の拡大縮小率の計算が少しめんどくさいだけかな?
c# でリフレクションというのは攻撃魔法をときどきはね返す防御魔法のようなものだと思うのですが、リフレクションを使う方法は具体的にどうするのでしょうか?
自力で計算する方法でとりあえずはなんとかなりそうです。
まだコード書いてないけど、画像の表示方法と画像サイズと pictureBox のサイズがわかるのでそこから計算できそうです。
縦と横の拡大縮小率の計算が少しめんどくさいだけかな?
246デフォルトの名無しさん
2019/11/06(水) 17:52:05.14ID:bs5+QLo2 ttps://gist.github.com/Flafla2/f0260a861be0ebdeef76
の
public Perlin(int repeat = -1) { this.repeat = repeat; }
は
public Perlin() { this.repeat = -1; }
と同じ意味でしょうか?またそうであれば、なぜパラメータとしてint repeat = -1としているのでしょうか?
の
public Perlin(int repeat = -1) { this.repeat = repeat; }
は
public Perlin() { this.repeat = -1; }
と同じ意味でしょうか?またそうであれば、なぜパラメータとしてint repeat = -1としているのでしょうか?
247デフォルトの名無しさん
2019/11/06(水) 17:55:11.74ID:vTr6jChq248デフォルトの名無しさん
2019/11/06(水) 17:57:42.25ID:cEKOtBl2 >>246
Perlin()と呼ぶことができる
これはPerlin(-1)と書いた場合と同じ
Perlin(0)ってかけばrepeatには0がはいる
だいたい-1なんだけど時々別の値にしたいときなんかに使う
詳しくはオプション引数でググって
Perlin()と呼ぶことができる
これはPerlin(-1)と書いた場合と同じ
Perlin(0)ってかけばrepeatには0がはいる
だいたい-1なんだけど時々別の値にしたいときなんかに使う
詳しくはオプション引数でググって
249デフォルトの名無しさん
2019/11/06(水) 18:50:35.37ID:bs5+QLo2 >>247, 248
ありがとうございました。
ありがとうございました。
250デフォルトの名無しさん
2019/11/25(月) 17:06:44.56ID:3yP/a9XY 1 2次元空間上の座標に乱数で円を重ならないようにたくさん配置します。
2 全ての円の座標の平均値がある条件を満たせば終了。
3 満たさなければ初期化して1に戻る
円の数を増やすと2の条件が厳しくなるので、12のループの繰り返しが指数関数的に厳しくなります。
100個を超えると配置できずにフリーズするんですが、
60ぐらいでも10回に1度くらいフリーズします。
10回に1度フリーズするのがよくわからない。。。
Windowsって特定のアプリがループ処理をし続けるとアプリをフリーズさせるようなシステムがあるのでしょうか?
2 全ての円の座標の平均値がある条件を満たせば終了。
3 満たさなければ初期化して1に戻る
円の数を増やすと2の条件が厳しくなるので、12のループの繰り返しが指数関数的に厳しくなります。
100個を超えると配置できずにフリーズするんですが、
60ぐらいでも10回に1度くらいフリーズします。
10回に1度フリーズするのがよくわからない。。。
Windowsって特定のアプリがループ処理をし続けるとアプリをフリーズさせるようなシステムがあるのでしょうか?
251デフォルトの名無しさん
2019/11/25(月) 17:15:30.05ID:uMtE/h/q252デフォルトの名無しさん
2019/11/25(月) 17:49:11.57ID:3yP/a9XY >>251
すいません。
250はかなり要約して書いていて、本当はかなり長いコードでここには載せ難く。
10回に9回は1秒程度でループを抜け終了するので、
しばらく待ってれば表示されるかと思うと、やがてOSから応答してないよとメッセージがきます。
cならリソース開放忘れを疑うのですが、c#ってそのへん自動で管理してくれるんですよね。
すいません。
250はかなり要約して書いていて、本当はかなり長いコードでここには載せ難く。
10回に9回は1秒程度でループを抜け終了するので、
しばらく待ってれば表示されるかと思うと、やがてOSから応答してないよとメッセージがきます。
cならリソース開放忘れを疑うのですが、c#ってそのへん自動で管理してくれるんですよね。
253デフォルトの名無しさん
2019/11/25(月) 17:54:12.64ID:pjJuONFZ 自分のバグを言語やOSのせいにする香具師は何をやっても大成しない
254デフォルトの名無しさん
2019/11/25(月) 18:05:07.13ID:b/ZUvETz ウィンドウプロシージャから呼び出された時に時間のかかる処理をすると
基本的にマウス入力も含めた後続のウィンドウメッセージが処理できないので
結果的に操作などが受け付けなくなりフリーズしたようになる
(5秒だかウィンドウプロシージャから戻ってこないとOSが駄目だコイツと判断してよく見る「応答なし」になる)
レンダリング以外の部分で一秒もかかる可能性があるならその時点で別スレッドにすべきではある
フリーズに規則性がないのはそれこそロジック見てみないと誰にもわからんでしょ
様子からしてGCが暴れてる可能性はあるので値型使ってみたりとかの余地はあるだろうけど
基本的にマウス入力も含めた後続のウィンドウメッセージが処理できないので
結果的に操作などが受け付けなくなりフリーズしたようになる
(5秒だかウィンドウプロシージャから戻ってこないとOSが駄目だコイツと判断してよく見る「応答なし」になる)
レンダリング以外の部分で一秒もかかる可能性があるならその時点で別スレッドにすべきではある
フリーズに規則性がないのはそれこそロジック見てみないと誰にもわからんでしょ
様子からしてGCが暴れてる可能性はあるので値型使ってみたりとかの余地はあるだろうけど
255デフォルトの名無しさん
2019/11/25(月) 19:04:16.55ID:qlQ2yr7c 魔法の言葉、Application.DoEvents();
ループ処理の中に書くといいよ
ループ処理の中に書くといいよ
256デフォルトの名無しさん
2019/11/25(月) 19:27:30.58ID:0ThvbZYY >>252
全体的に何を言ってるのかよく分からないんで推測だけど、
UIがフリーズするのはUIスレッド上のユーザーコードがビジーループになってるから。
ウィンドウやコントロールの再描画やマウスやキーイベントへの反応は
システム側のコードで処理されるわけだけど、それはUIスレッドで動く。
だからUIスレッド上のユーザーコードがビジーのままだと、
システムは側のコードも動けずにフリーズしたように見える
全体的に何を言ってるのかよく分からないんで推測だけど、
UIがフリーズするのはUIスレッド上のユーザーコードがビジーループになってるから。
ウィンドウやコントロールの再描画やマウスやキーイベントへの反応は
システム側のコードで処理されるわけだけど、それはUIスレッドで動く。
だからUIスレッド上のユーザーコードがビジーのままだと、
システムは側のコードも動けずにフリーズしたように見える
257デフォルトの名無しさん
2019/11/25(月) 19:36:27.15ID:qmWi7Xp+ フリーズするのはスレッドを分離してないのが原因だけど
それ以前に何らかの条件で無限ループになっている可能性もあるな
それ以前に何らかの条件で無限ループになっている可能性もあるな
258デフォルトの名無しさん
2019/11/26(火) 03:03:00.47ID:oYeHIm2x >>250
まずそういうのは実際には円を描かないで演算だけやってみるところからはじめませう。演算が悪いのか描画が悪いのか切り分けたい。
まずそういうのは実際には円を描かないで演算だけやってみるところからはじめませう。演算が悪いのか描画が悪いのか切り分けたい。
259デフォルトの名無しさん
2019/11/26(火) 10:03:15.82ID:c3SEnPpX260デフォルトの名無しさん
2019/11/26(火) 10:19:16.34ID:SOHA2nuS みなさんいろいろありがとうございます。
円の数とフリーズ確率に比例関係があるので、
ループでの処理が問題だと思います。
別スレッドにしてみようと思います。
それまで
Application.DoEvents();
活用してみます。
円の数とフリーズ確率に比例関係があるので、
ループでの処理が問題だと思います。
別スレッドにしてみようと思います。
それまで
Application.DoEvents();
活用してみます。
261デフォルトの名無しさん
2019/11/26(火) 14:22:57.27ID:dAEqoOXB メモリ不足無視して実行し続けてるのも暴走って言うかもな
262デフォルトの名無しさん
2019/11/26(火) 19:13:59.32ID:MuEAwLxr263デフォルトの名無しさん
2019/11/27(水) 12:24:02.31ID:KtqS+hCI 1に戻る前に強制GCした方が良くね
264デフォルトの名無しさん
2019/11/30(土) 13:57:48.46ID:xRFcAUWE 2の終了判定が甘くて無限ループしてるだけだろ
265デフォルトの名無しさん
2019/12/01(日) 12:57:13.04ID:i2YaNYYV >>255
魔法の言葉、Application.DoEvents();
で解決しました。
やはりWhile分で条件達成まで延々ループ処理させてたのが問題だったようです。
フリーズすると制作したアプリで取得したデータ大丈夫なの?
って冷たい目にさらされていたのですが、これですっきりしました。
ありがとうございました。
魔法の言葉、Application.DoEvents();
で解決しました。
やはりWhile分で条件達成まで延々ループ処理させてたのが問題だったようです。
フリーズすると制作したアプリで取得したデータ大丈夫なの?
って冷たい目にさらされていたのですが、これですっきりしました。
ありがとうございました。
266デフォルトの名無しさん
2019/12/11(水) 19:12:23.65ID:t3xhIlyZ ASP.NET MVCを初めて勉強しています
MVの場合、ボタンクリックのイベント処理はどう書くのがスタンダードなのでしょうか?
(Webフォームではイベントハンドラーを使ってましたが。)
MVの場合、ボタンクリックのイベント処理はどう書くのがスタンダードなのでしょうか?
(Webフォームではイベントハンドラーを使ってましたが。)
267デフォルトの名無しさん
2019/12/11(水) 19:20:12.37ID:qXq3MGtY form
268デフォルトの名無しさん
2019/12/11(水) 21:27:46.75ID:H3x5MOt+269デフォルトの名無しさん
2020/01/01(水) 12:48:02.27ID:7beskV3u 自分で作ったアプリ14個くらいショートカットで起動できるようにしていて、
その中の名前が似た3つが弄ってもいないのにある日突然起動しなくなったのですがどういったことが考えられるでしょうか
その中の名前が似た3つが弄ってもいないのにある日突然起動しなくなったのですがどういったことが考えられるでしょうか
270デフォルトの名無しさん
2020/01/01(水) 12:53:24.15ID:2+A6XpAV 何かを弄ったから
271デフォルトの名無しさん
2020/01/01(水) 13:19:14.52ID:ZjrgaAUK 妖精さんの悪戯じゃないかな
272デフォルトの名無しさん
2020/01/01(水) 13:26:47.06ID:tqBP4ADq 大きくならない
固くならない
固くならない
273デフォルトの名無しさん
2020/01/01(水) 13:51:29.41ID:dLiykUmV274デフォルトの名無しさん
2020/01/01(水) 15:47:55.57ID:V7aDVAm9 とりあえずイベントログを見てなんかエラーが出てないか確認
275デフォルトの名無しさん
2020/01/02(木) 09:17:19.87ID:OoAxt65V テキストファイルを開いて書き換える動作が、
昨日まで普通にできていたのが今日やってみたら読み込みは出来るものの、書き込み時に
UnauthorizedAccessException:パスへのアクセスは拒否されました。
の例外が出て書き換えできなくなったのですがなぜでしょうか
昨日まで普通にできていたのが今日やってみたら読み込みは出来るものの、書き込み時に
UnauthorizedAccessException:パスへのアクセスは拒否されました。
の例外が出て書き換えできなくなったのですがなぜでしょうか
276デフォルトの名無しさん
2020/01/02(木) 09:36:21.31ID:4gUBqapQ そのファイルのアクセス権を剥奪されたのでしょう
277デフォルトの名無しさん
2020/01/02(木) 10:23:46.38ID:OoAxt65V278デフォルトの名無しさん
2020/01/02(木) 10:24:50.25ID:ZgXvL7GY279デフォルトの名無しさん
2020/01/02(木) 10:26:25.06ID:ZgXvL7GY280デフォルトの名無しさん
2020/01/02(木) 10:47:12.88ID:OoAxt65V ありがとうございます
WindowsDeffenderを切ってみたら書き込みが出来ました
セキュリティが悪く効いてた感じでしょうか
WindowsDeffenderを切ってみたら書き込みが出来ました
セキュリティが悪く効いてた感じでしょうか
281デフォルトの名無しさん
2020/01/04(土) 15:40:54.17ID:wppxYzrl DropDown式メニューの幅を指定したいのですが、ToolStripMenuItemだと、
幅を指定しても無視されてしまいます。
ToolStripButtonであれば反映されるのですが、ToolStripMenuItemでも指定する方法を教えてください。
//指定しても無視される(文字に合わせた幅になってしまう)
var item = new ToolStripMenuItem("テスト");
item.AutoSize = false;
item.Width = 100;
this.toolStripMenuItem.DropDownItems.Add(item);
//これなら反映される。
var item = new ToolStripButton("テスト");
item.AutoSize = false;
item.Width = 100;
this.toolStripMenuItem.DropDownItems.Add(item);
幅を指定しても無視されてしまいます。
ToolStripButtonであれば反映されるのですが、ToolStripMenuItemでも指定する方法を教えてください。
//指定しても無視される(文字に合わせた幅になってしまう)
var item = new ToolStripMenuItem("テスト");
item.AutoSize = false;
item.Width = 100;
this.toolStripMenuItem.DropDownItems.Add(item);
//これなら反映される。
var item = new ToolStripButton("テスト");
item.AutoSize = false;
item.Width = 100;
this.toolStripMenuItem.DropDownItems.Add(item);
282デフォルトの名無しさん
2020/01/04(土) 18:54:04.23ID:kH3pRzgo >>281
ContextMenuStripでAutoSize=falseにしてそれをDropDownに登録するのはだめなのか?
ContextMenuStripでAutoSize=falseにしてそれをDropDownに登録するのはだめなのか?
283デフォルトの名無しさん
2020/01/04(土) 23:39:17.56ID:oOekXYXc >>281
やってみた感じ、DropDownが表示される時に
MenuItemの場合はWidthではなくてTextを使って横幅を評価しているみたいなのでダメっぽいねw
(AutoSize = falseにした場合、MenuItemの幅自体はちゃんと設定した値になっていることは
マウスオーバーした時のハイライトの枠の大きさで確認できる)
Labelの場合はAutoSizeをfalseにすればWidthもHeightも設定した値が
そのまま表示に反映されるようなので、これをプレースホルダー的に使うことは出来そう。
バッドノウハウ感全開だけどw
でもMenuItemの幅をわざわざ制御したい理由が思いつかんw
やってみた感じ、DropDownが表示される時に
MenuItemの場合はWidthではなくてTextを使って横幅を評価しているみたいなのでダメっぽいねw
(AutoSize = falseにした場合、MenuItemの幅自体はちゃんと設定した値になっていることは
マウスオーバーした時のハイライトの枠の大きさで確認できる)
Labelの場合はAutoSizeをfalseにすればWidthもHeightも設定した値が
そのまま表示に反映されるようなので、これをプレースホルダー的に使うことは出来そう。
バッドノウハウ感全開だけどw
でもMenuItemの幅をわざわざ制御したい理由が思いつかんw
284デフォルトの名無しさん
2020/02/11(火) 16:42:09.82ID:IKSpGnXe C#でPDF生成するのに定番のライブライはどれ?
285デフォルトの名無しさん
2020/02/11(火) 16:57:55.37ID:+cYPhDtF skiasharpかのう
286デフォルトの名無しさん
2020/02/11(火) 17:48:40.11ID:SM6OROcH iTextSharp
287デフォルトの名無しさん
2020/02/11(火) 18:32:47.01ID:3sdew+Rs TextBoxに、テンプレート的なデフォルト文字列を持たせたいのですが、
Formのコンストラクタで
textBox1.Text = "文字列";
という方法で指定すると、TextBoxが表示されてから何も変更してない状態でもCtrl+Zで文字列が消えてしまいます。
どうすれば、消えないようにできるでしょうか?
Formのコンストラクタで
textBox1.Text = "文字列";
という方法で指定すると、TextBoxが表示されてから何も変更してない状態でもCtrl+Zで文字列が消えてしまいます。
どうすれば、消えないようにできるでしょうか?
288デフォルトの名無しさん
2020/02/11(火) 18:49:44.84ID:zRIDVkEW >>287
試してみたけどこちらでは.Net3.5でも.Net4.62でも再現しない
念のためフォームのShown時のCanUndoを見たらfalseになっているからUndoが効くはずがない
どこの違いなのか分からないが文字列設定後かShown時にとりあえずtextBox1.ClearUndo()を入れてみたら
試してみたけどこちらでは.Net3.5でも.Net4.62でも再現しない
念のためフォームのShown時のCanUndoを見たらfalseになっているからUndoが効くはずがない
どこの違いなのか分からないが文字列設定後かShown時にとりあえずtextBox1.ClearUndo()を入れてみたら
289デフォルトの名無しさん
2020/02/11(火) 20:57:38.89ID:b7fKfEtL290デフォルトの名無しさん
2020/02/11(火) 21:01:04.04ID:zRIDVkEW キーボード眺めて思ったけどCTRL+ZでなくてCTRL+Xしている可能性もあるなw
手入力じゃなくコード上の代入だとUndoできないんだよな
手入力じゃなくコード上の代入だとUndoできないんだよな
291デフォルトの名無しさん
2020/02/12(水) 01:52:31.19ID:CB9IiDBv 実務経験1年で月収80万稼げるエンジニアになった理由
https://www.youtube.com/watch?v=DrbbyGsHQic
意識が低いエンジニアこそフリーランスになれ
https://www.youtube.com/watch?v=nSEaAJlgjbQ
フリーランスエンジニアの週3労働ってどんな感じ?
https://www.youtube.com/watch?v=8yjoDCdbzMc
ぼくがスキルのない社畜ならこうやって脱する
https://www.youtube.com/watch?v=aae8xxbUlMM
初めて人を雇ったらもう二度とサラリーマンをやりたくないと思った話
https://www.youtube.com/watch?v=U0OCGRVLFsM
プログラミングは文系でも余裕で出来ます!理由を現役プログラマーが解説
https://www.youtube.com/watch?v=iBOeiSKBIW8
貧乏人こそ社会不適合者
https://www.youtube.com/watch?v=O3BT72BIBJI
元ド貧乏が教える】貧乏を抜け出すための2つの考え方
https://www.youtube.com/watch?v=IRrCgTy3ckc
より良いオファー貰ってるのに転職しないとか何考えてるの?
https://www.youtube.com/watch?v=i0J6uRhlj7o
https://www.youtube.com/watch?v=DrbbyGsHQic
意識が低いエンジニアこそフリーランスになれ
https://www.youtube.com/watch?v=nSEaAJlgjbQ
フリーランスエンジニアの週3労働ってどんな感じ?
https://www.youtube.com/watch?v=8yjoDCdbzMc
ぼくがスキルのない社畜ならこうやって脱する
https://www.youtube.com/watch?v=aae8xxbUlMM
初めて人を雇ったらもう二度とサラリーマンをやりたくないと思った話
https://www.youtube.com/watch?v=U0OCGRVLFsM
プログラミングは文系でも余裕で出来ます!理由を現役プログラマーが解説
https://www.youtube.com/watch?v=iBOeiSKBIW8
貧乏人こそ社会不適合者
https://www.youtube.com/watch?v=O3BT72BIBJI
元ド貧乏が教える】貧乏を抜け出すための2つの考え方
https://www.youtube.com/watch?v=IRrCgTy3ckc
より良いオファー貰ってるのに転職しないとか何考えてるの?
https://www.youtube.com/watch?v=i0J6uRhlj7o
293デフォルトの名無しさん
2020/02/14(金) 12:17:04.07ID:Rj5e84UH >>292
それ日本語の折り返しに対応してないとか、難あるよ。
それ日本語の折り返しに対応してないとか、難あるよ。
294デフォルトの名無しさん
2020/02/14(金) 12:38:43.18ID:a5iC3cHy 日本語は必須事項ではないので多分大丈夫です
295デフォルトの名無しさん
2020/02/14(金) 12:47:36.23ID:7R4aPKWb PDF仮想プリンタの存在前提で普通にGDI+で書けば楽だと思うけどな
Win10ならデフォで入ってるんだし
Win10ならデフォで入ってるんだし
296デフォルトの名無しさん
2020/02/14(金) 13:04:12.74ID:a5iC3cHy なるほど!
検討してみます。ありがとう!
検討してみます。ありがとう!
297デフォルトの名無しさん
2020/02/28(金) 18:11:07.35ID:HAMXUqwp win32のhage.rcファイルからhage.resを造って-win32res:hage.resでexeにリンクしてるとき
hage.rcの中身が
hogehoge BITMAP "filename.bmp"
のときは
Bitmap a = Bitmap.FromResource(hInst, "hogehoge");
で取得出来るのですが
hage.rcの中身が
456 BITMAP "filename.bmp"
だと
Bitmap b = Bitmap.FromResource(hInst, 456);
Bitmap b = Bitmap.FromResource(hInst, Convert.ToString((IntPtr)456));
Bitmap b = Bitmap.FromResource(hInst, Convert.ToString((IntPtr)((UInt16)456)));
とかで取得出来ないのですが
456を上手くBitmap.FromResource()に渡す方法は無いのでしょうか?
hage.rcの中身が
hogehoge BITMAP "filename.bmp"
のときは
Bitmap a = Bitmap.FromResource(hInst, "hogehoge");
で取得出来るのですが
hage.rcの中身が
456 BITMAP "filename.bmp"
だと
Bitmap b = Bitmap.FromResource(hInst, 456);
Bitmap b = Bitmap.FromResource(hInst, Convert.ToString((IntPtr)456));
Bitmap b = Bitmap.FromResource(hInst, Convert.ToString((IntPtr)((UInt16)456)));
とかで取得出来ないのですが
456を上手くBitmap.FromResource()に渡す方法は無いのでしょうか?
298デフォルトの名無しさん
2020/02/28(金) 18:48:54.41ID:snfNueOm299デフォルトの名無しさん
2020/02/28(金) 19:02:19.22ID:HAMXUqwp ありがとう
これだと自分でWin32APIのLoadBitmap呼んだ方が速い気がしないでもない
これだと自分でWin32APIのLoadBitmap呼んだ方が速い気がしないでもない
300デフォルトの名無しさん
2020/03/01(日) 05:48:57.42ID:wVHwYgLC こっちは2018年かよ
雑談するには迷惑かからんでいいけど
雑談するには迷惑かからんでいいけど
301デフォルトの名無しさん
2020/03/01(日) 16:22:20.47ID:KSyofv5N [DllImport("user32.dll", CharSet=CharSet.Auto)]
private static extern IntPtr LoadBitmap(IntPtr hInst, IntPtr id);
[DllImport("gdi32.dll")]
private static extern bool DeleteObject(IntPtr handle);
と
IntPtr p = (IntPtr)((UInt16)id);
IntPtr hBitmap = LoadBitmap(hInst, p);
Bitmap b = (Bitmap)Image.FromHbitmap(hBitmap);
DeleteObject(hBitmap);
return b;
でうまくいきました
CharSet=CharSet.Auto を書かなくても動くのですが
書かない場合だと LoadBitmapW ではなく LoadBitmapA の方が使われるようで
id が数値リソースのときは問題出ないのですが string でリソース名を指定するときに
参照されなくなるので書いておく方が良さそうです
IntPtr p = Marshal.StringToHGlobalAuto(rn); // OK
IntPtr p = Marshal.StringToHGlobalUni(rn); // OK
IntPtr p = Marshal.StringToHGlobalAnsi(rn); // CharSet.Auto 書かないときはこっちを書くと動作
private static extern IntPtr LoadBitmap(IntPtr hInst, IntPtr id);
[DllImport("gdi32.dll")]
private static extern bool DeleteObject(IntPtr handle);
と
IntPtr p = (IntPtr)((UInt16)id);
IntPtr hBitmap = LoadBitmap(hInst, p);
Bitmap b = (Bitmap)Image.FromHbitmap(hBitmap);
DeleteObject(hBitmap);
return b;
でうまくいきました
CharSet=CharSet.Auto を書かなくても動くのですが
書かない場合だと LoadBitmapW ではなく LoadBitmapA の方が使われるようで
id が数値リソースのときは問題出ないのですが string でリソース名を指定するときに
参照されなくなるので書いておく方が良さそうです
IntPtr p = Marshal.StringToHGlobalAuto(rn); // OK
IntPtr p = Marshal.StringToHGlobalUni(rn); // OK
IntPtr p = Marshal.StringToHGlobalAnsi(rn); // CharSet.Auto 書かないときはこっちを書くと動作
302デフォルトの名無しさん
2020/03/02(月) 10:28:32.19ID:NX3+Q9hq C#というより.NET Framework全般の問題かもしれませんが・・・
ビルドした実行ファイルの拡張子を7zにして開けると
.rsrc(フォルダ)
.text
.reloc
というファイルが出てきます
このうち「.text」をエディタで開けると
「C:\Users\ユーザー名\source\repos\プロジェクト名\obj\Release\実行ファイル名.pdb」
の文字列がそのまま入っておりユーザー名まで見えてしまいます
プロジェクトのプロパティなど見てみましたが該当する文字列は設定されていませんでした
この文字列が入らないようにビルドするにはどうすれば良いでしょうか?
ビルドした実行ファイルの拡張子を7zにして開けると
.rsrc(フォルダ)
.text
.reloc
というファイルが出てきます
このうち「.text」をエディタで開けると
「C:\Users\ユーザー名\source\repos\プロジェクト名\obj\Release\実行ファイル名.pdb」
の文字列がそのまま入っておりユーザー名まで見えてしまいます
プロジェクトのプロパティなど見てみましたが該当する文字列は設定されていませんでした
この文字列が入らないようにビルドするにはどうすれば良いでしょうか?
303デフォルトの名無しさん
2020/03/02(月) 10:29:26.56ID:NX3+Q9hq あ、本スレは別でしたかすみません
304デフォルトの名無しさん
2020/03/02(月) 10:31:33.41ID:nPQHiUH/ >>302
C#の問題じゃなくVisual studioとかのビルド側の設定の話だから該当するスレでやれ
C#の問題じゃなくVisual studioとかのビルド側の設定の話だから該当するスレでやれ
305デフォルトの名無しさん
2020/03/02(月) 11:10:23.06ID:glnmwhpK hoge.Dispose()って必ず呼ぶ必要ありますか?
ネットにあるサンプルでDispose()してるのと放ったらかしなのとあるようですが
放ったらかしでも問題無いとしたらわざわざDispose()呼ぶのはなぜですか?
ネットにあるサンプルでDispose()してるのと放ったらかしなのとあるようですが
放ったらかしでも問題無いとしたらわざわざDispose()呼ぶのはなぜですか?
306デフォルトの名無しさん
2020/03/02(月) 11:55:33.00ID:OjHPSko6 >>305
必ず呼ぶ必要はないが呼んだ方が良い
o リソース解放のタイミングやスレッドが制御できないのでそれらに依存する場合不具合の温床になる可能性
o 無駄なオブジェクトの昇格が起きてしまいGCに悪影響が出る可能性
いずれも無視できる場合もあれば致命的になる場合もある
サンプル程度で目くじら立てる必要はまったくないが
本番では呼んだ方が良い
必ず呼ぶ必要はないが呼んだ方が良い
o リソース解放のタイミングやスレッドが制御できないのでそれらに依存する場合不具合の温床になる可能性
o 無駄なオブジェクトの昇格が起きてしまいGCに悪影響が出る可能性
いずれも無視できる場合もあれば致命的になる場合もある
サンプル程度で目くじら立てる必要はまったくないが
本番では呼んだ方が良い
307デフォルトの名無しさん
2020/03/02(月) 12:09:29.55ID:glnmwhpK なるほどありがとうございます
ちなみに
using(Graphics g = Graphics.FromImage(hoge)){
...
}
みたいなときスコープ抜けるとgのDispose()は呼ばれないですか?
抜ける前に自分でg.Dispose();しておく必要ありますか?
ちなみに
using(Graphics g = Graphics.FromImage(hoge)){
...
}
みたいなときスコープ抜けるとgのDispose()は呼ばれないですか?
抜ける前に自分でg.Dispose();しておく必要ありますか?
308デフォルトの名無しさん
2020/03/02(月) 12:27:47.69ID:MTJ6Jwm2 disposeを自動で呼んでもらうためにusing構文がある
309デフォルトの名無しさん
2020/03/02(月) 15:08:50.50ID:rG8m8EdX >>307
せめてこのあたりは一読してから質問した方がいい
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/using-statement
せめてこのあたりは一読してから質問した方がいい
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/using-statement
310デフォルトの名無しさん
2020/03/02(月) 15:54:23.45ID:glnmwhpK311デフォルトの名無しさん
2020/03/02(月) 16:35:38.68ID:glnmwhpK 何か今までGCに任せれば良いやって適当に書いてたんですが
意外とDispose()呼ばないといけない場所多いんですね
意外とDispose()呼ばないといけない場所多いんですね
312デフォルトの名無しさん
2020/03/02(月) 16:37:42.01ID:glnmwhpK クラスを書く時デストラクタとDisposeを省略するなっていうのが今回得た教訓かも知れません
313デフォルトの名無しさん
2020/03/02(月) 17:18:06.30ID:8o+Bfjp3 ちゃんとした製品にするようなソフトならケアするけど個人やチームで使う程度のちょっとしたツールだったら一切書かないな
314デフォルトの名無しさん
2020/03/02(月) 17:24:53.84ID:qKOTAeuh グラフィック周りや通信周り、データーベース周りあたりはちゃんと書いといた方がいいんじゃねえか?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★10 [ぐれ★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「高市さん負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 [樽悶★]
- トランプ氏「台湾侵攻すれば北京爆撃」“過激予告発言”報道がXで再燃「高市氏の1億倍やばい」 [七波羅探題★]
- 【為替】対ドルで157円台、対ユーロ181円台に下落 財政悪化を警戒 [蚤の市★]
- 【自民党】鈴木宗男議員「日本側はわざわざ中国に行ったということは、歩み寄るための行動で、頭を下げるのが仕事である」 [樽悶★]
- 【ペルソナ・ノン・グラータ】中国総領事の早期国外退去を首相に要請へ 自民・保守系グループ「日本の尊厳と国益を護(まも)る会」 [ぐれ★]
- 中国報道、高市首相を「毒苗」と中傷😡 [399259198]
- 【高市悲報】🇨🇳中国「日本への報復措置? 他にいくらでも方法はある。 まだまだやめないよ」 😨😱 [485983549]
- でも韓国ドラマに出てる女優って美人多いよな
- 安倍晋三さん、完全にチェックアウトしてしまう…「母の部屋に安倍元首相が表紙の旧統一教会の機関誌があった」 [405019576]
- 【悲報】日本、パンダ0にwwwwwwwwwwww高市さんありがとう🐼 [271912485]
- 高市早苗、約1ヶ月でドル円・10円円安を達成 [256556981]
