ふらっと C#,C♯,C#(初心者用) Part141
■ このスレッドは過去ログ倉庫に格納されています
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。 >>125-126
Ruby, Nokogiri, Selenium WebDriver では、
doc = Nokogiri::HTML( driver.page_source )
element = doc.at_css '[id="id_koregahosii"] > li'
puts element.text
#=> このliを取得した
CSS Selector では、[id="id_koregahosii"] > li。
id 属性が"id_koregahosii" である要素の、直下のli 要素。
> は直下を表す
doc.at_css は、最初に見つかった、1つの要素で、
doc.css なら、配列(複数要素)が返ってくるように使い分けるので、要注意!
jQuery では、0・1つの要素の場合でも、常に配列が返るので、間違える事がない!
最初に、jQuery などで、CSS Selector を学ぶ必要がある。
それよりも複雑な指定は、XPath を使う >>131
bool型にキャストしてます。
でもエラーがでます。 >>133
boolとbool?は違う型
null許容型でググろう >>134
すみません。わからないので教えてください。。。。 >>135
bool?型と言ってるのになぜbool型にするの?
(bool)のとこを(bool?)って直すだけだぞ
null許容型は、要するに(bool?の場合は)true,false以外にnullも含む(許容する)型 using System.Numericsとしているのに
Complex a = 123;とだけ書くと何故か赤い波線が付いてエラーになります
System.Numerics.Complex a = 123;とするとエラーは出ないのですが、省略できないのが気に食わない >>137
VisualStudioのバージョンは?
後、赤線のエラーは何て書いてある?
VS2017だけど、省略してもエラー出ないよ >>138
暗黙的に変換できませんと書いてあります バージョンは2017です
System.NotImplementえdException: 'メソッドまたは操作は実装されていません。'というエラーも出ます その再現する部分だけを書いたプロジェクトをどこかに晒してみたら? 全部削除して書き直したら治りました
何度も確認したのでタイプミス等ではないはずですが、何が原因だったのか
お騒がせしました >>130
var o = (bool?)true;
bar b = (bool)o;
これは実行時もエラーは発生しないし、
var o = (bool?)null;
bar b = (bool)o;
これで発生する例外はNullReferenceExceptionみたいだから、たぶん指摘されてるのと別の原因なんだろうなあ。
知らんけど。 あー間違えた
var o = (bool?)true;
じゃなくて
object o = (bool?)true;
だね。結論は変わらない >>143
何言いたいのかよくわからないけど>>130に対する回答は>>131であってるよ
DataGridViewのCellの初期値がnullなのが原因なだけだから
null許容型のキャストするか行を作った段階で値を代入するかのどちらかになる >>145
分かってよ。
nullをboolにキャストしようとした時発生する例外はNullReferenceExceptionであって
InvalidCasExceptionではないはずだ >>130
失礼。
発生した例外がNullReferenceExceptionではないから、
bool?にキャストすべき所がboolになってるバグの他にもバグがある。
例外はInvalidCasExceptionだから、
DataGridViewの列の定義が間違っていてdgv_test[1, i_row]がDataGridViewCheckBoxCellになっていないか、
初期化時にdgv_test[1, i_row].Valueにbool以外の値を代入していると思われる。 Windowsフォームでコントロールのプロパティの
EnableをFalseにすると「若干」色が薄くなるようですが
もっとはっきり薄くできないですかね?
完全に消えるとまずいんだけど
はっきり「今これは使えません」って意思表示したいんだけど
いい方法無ですかね? >>150
フォーム全体で対応させるのはわからない
コントロール一つならEnabledChangedのイベントで
コントロールに初めから組み込みたいのなら
https://dobon.net/vb/dotnet/control/tbenabledfalse.html
の「自分で描画する」を参考に。やっていることは真逆だけど色を変えればいいだけ
ボタンやラベルなら使用不可を示すのに色だけでなくフォントの打ち消し線の有無で実装したことならある Window上にOpacity薄くしたパネルを全面表示すればいいんじゃないか テンプレに「酔っぱらいはレス禁止」って付け加えておいた方がいいな Checkboxの質問をしたものです。
初期化時にFalseを設定してやったらエラーが出なくなりました。 チェックボックスの初期値がない=null
nullからのinvalid castやんけ なんでList<T>がraw型のCollection継承してる扱いになってんだ??? ちょっと何言ってるかわかんないです raw型って何
何か読んで疑問に思ったんだったら記述示すなりリンク張るなりして C#で多倍長浮動小数点数演算は出来ますか
多倍長整数を使ってどうにかするしかないんでしょうか >>160
自分でなんとかしたいと思います
1000桁とか10000桁とかの計算がしたいので 今後、開発作業が増えてEXEのファイルサイズが大きくなっていく事が想定される場合
プロジェクト分けた方がええかな?
インストール型じゃなくてWEBシステムとして作ろうか悩み中 「拡張メソッドはトップレベルの静的クラスでしか宣言できない」ということは、
public class Cの内部にprivate enum Eを置いたとき、Eに対して拡張メソッドを追加することは不可能なのでしょうか
いくつかの定数(とメソッド)を持った構造体で代用するしかないですかね そこまでobj.method記法に拘る必要も無いだろ… >>162
どうでもいい
開発規模ウン億円とかにならない限り、人間が書いたコードの実行ファイルのサイズなんて全く問題にならない
それはともかく、Webを選べるのなら迷わずWebにすべき
exe配ると後々のメンテは地獄よ >>165
なるほどですね。
どうしてもWEBだと厳しいシステムなんですよね。
(サーバのIPアドレスが固定だとまずい)
cliclonceというのを使えばバージョンアップとか簡単ですか? ClickOnceはシステム管理者がガチギレするらしいので利用しないのが吉 クリックワンス
http://www.asahi-net.or.jp/~ef2o-inue/vbnet/sub13_05_010.html >>163
仮にenumを入れ子にする点は譲れないとしても(この点も本当は再考した方がいいと個人的には思うけど)
アクセシビティーをpublicにすることは検討していいんじゃないの?
隠蔽したい気持ちは分からんでもないが、少なくともpublicにしたからって何か危険があるわけじゃない。 >>172
よく考えたらenumを入れ子で隠す設計をc#は想定してないってことですもんね
大人しく外に出します、ありがとうございました DataGridViewに詳しい人は教えてください。
DataGridViewの列にチェックボックスの列を設けています。
□がクリックされた時だけではなく、□の属するセル(の予約)が
クリックされても□にチェックが入る様に制御したいのですが
どうすればよいのでしょうか?
何かプロパティで設定するのですか? >>174
CheckBoxのセルのクリックで切り替えたいのなら
例えばCellをReadOnlyにしてCellClickイベントで値を切り替えればできる >>175
なるほど!
そーいう方法しかないんですね。
てっきり標準で設定出来るプロパティがあるのかと思ってました。 >>176
方法の一つをあげただけでプロパティにあるかは知らない >>177
サンクス!
セレニウムにチャレンジしています。
VSで作成した場合
インストール環境にNugetが入っていないとうごかないのでしょうか? >>178
アクセス元に迷惑掛けるの目に見えてるから辞めとけ >>180
スクレイピングの練習やで
サンドバッグになってもらいます。 スクレイピングをこれまでIEを操作して行ってきていましたが
セレニウムを使う方がナウいのでしょうか?
コンソール画面が立ち上がって結構うざいんですが >>183
コンソールを消す事はできました。
ただ、問題がありまして
Cromeを使ってログインしないと見えないサイトの中のとあるページを
スクレイピングしようと思っていますが、一度ログインしたのに
もう一度プログラムを実行すると再び画像認証付きのログインページが表示されてしまいます。
Chromeのセレニウムでログインした場合、
ログインセッションは、プログラムを終了すると自動でとじられるのでしょうか? セレニウムで画像選択は同実装すればよいのでしょうか?
Windwos APIを使わないと、ダメでしょうか? スクレイピングはできる様になりました。
ドラッグするか、その枠をクリックしてファイルを選択するしか
画像の選択が出来ません。
セレニウムでドラッグやファイルの選択はできないですか? スクレイピング(が何かわかって無いけど)はできる様に(なった気持ちに)なりました。 select ユーザーコード, ユーザー名 from tbl_user group by ユーザーコード, ユーザー名 order by ユーザーコード
上記のクエリを、Visual Studio 2019の、クエリの構成ウィザードで実行すると成功するのですが、
構成ウィザードで作成したGetData()メソッドをソースコードから呼び出すと、
"System.Data.ConstraintException: 制約を有効にできませんでした。行に入力できるのは、Null 以外の値、一意な値、あるいは外部キーですが、この制約の違反が 1 つ以上の行で発生しています。"という例外が発生します。
何が原因でしょうか? ありがちなのは
その型付テーブルにユーザーコード・ユーザー名以外の列があって
それがNULL非許容であるケース
そろそろ型付テーブルは捨ててみるのはどうだろう >>194
ありがとうございます。
捨てるというか、今データベースプログラミング覚え始めなのです・・・。 group by したらorder by は要らない
と思うんだけどね つか、ユーザーコードかユーザー名にnullがあるんじゃね? >>196
order by しないと結果の順序は不定だぞ C#の勉強のためにメモ帳を作ろうと計画していますが
フォームにTextBoxを貼り付けるだけではあまり面白くありません
また禁則処理や縦書きの機能もついていません
なにか他のもの、WebBrowserあたりを使うのかな?と想像しているのですが WPFだとImageを使うんでしょうか
ImageもしくはPicutureBoxを使う方向でやってみます WPFならWPFのスレで聞いた方がいい
WPF(.NET4.x, .NET Core) GUIプログラミング Part23
https://mevius.5ch.net/test/read.cgi/tech/1557960752/ >>200
メモ帳意外と難しいよね
オレも初めの頃作ろうとして挫折した(あわよくばテキストエディタ目指そうとしてたのもあって)
勉強のためだけだとモチベ上がらないので、世の中にあるけど、俺様仕様なのが欲しいってのを作ってみてはどうかな(なるべく簡単なものから) A・B・C・E・Dという5つの項目があって、
例えば、Aが10で、Bが10で、Cが15で、Dが20で、Eが30の時、3という数字を格納したくて、
今までは多次元配列で、num[10,10,15,20,30]=3という風に入れてたのだけど
これだと配列の宣言時に添え字大きいとメモリ足りないエラー出たりするのだけど
多次元配列以外でこういう処理するほうほうはないでしょうか >>207
dictionaryでkeyをtupleにするとか? >>208-209
ありがとうございます
試してみます 扱うアイテム数や更新や検索速度によっても解は変わるけどね C#でメッセージボックスそっくりのフォームを表示したいのですが、
既にそういうことやって公開してるサイトとかあったら教えてください。
とりあえず警告とかのアイコンとメッセージとOKボタンが出ればOKです。 >>212
MessageBoxクラスと言うそのまんまなのが標準であるけど >>213
英語OS環境でも日本語を表示したいので、MessageBoxだとだめなんです 英語OSで日本語表示
マルウェア臭しかしない
出来たとしてもやめたほうがいいw 手元に英語版Windowsがないから確認できんけど、
Win9xの時代じゃないんだから英語版Windowsだからって日本語のメッセージが化けるとかないはずだと記憶してるけど
違ったっけ? >>217
MessageBoxクラスはロケールのシステムフォントで表示されるので化け化けです
逆にこのクラスのフォントを変えられればそっちでも良いんですがぐぐっても全く出てこず・・ >>219
他の画面を作るのと同じようにFormを自作してShowDialogするだけでいいよ >>219
ほんと?
OSで設定されてるフォントが使用されるのはそう(デフォは昔ならTahoma、今は何だっけ?)
なんだけど、WindowsにはFontLinkって仕組みがあって、欧文以外の文字の場合は適当な
フォントが代わりに使用される仕組みになってるはずだと思うが...
まあどっちにしろサクッと自作しても大した手間ではないな Windowsのデスクトップアプリ作ってみたいんだけど、UWPじゃなくてWPF使った方がいいの? >>225
何が目的?
ストアで売りたいのならUWP
Windows 10以外で使う気があるのならUWPは厳禁 >>226
一度も触ったことないからデスクトップアプリ作ってみたい
販売もWin10以外で使う予定もないです >>227
Visual Studio使ってWindows Formがクッソ楽とWPF使ったことない人からのアドバイスしとくw >>228
楽かどうかはWinformもWPFも同じだよ〜
webで拾える情報はWinformの方が多いが >>230
横だけど
日曜プログラマレベルでWinFormsでそれなりにDB連携の業務アプリを作って運用してはいるんだけど
今更WPFの勉強スタートして使いものになるかな?
つーか、1度作ったWinFormsをWPFにするには作り直しだよね・・・ ■ このスレッドは過去ログ倉庫に格納されています