[過去ログ] ふらっと C#,C♯,C#(初心者用) Part137 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
116: (ワッチョイ 239f-xI9k) 2018/04/21(土)11:00 ID:k3YYD8ov0(1/2) AAS
エポック秒のことかなぁ
117
(2): (アウアウカー Sa43-pa6j) 2018/04/21(土)12:09 ID:Y1+gKOzZa(1) AAS
アナログメーター的なやつです
118: (ワッチョイ 239f-xI9k) 2018/04/21(土)12:39 ID:k3YYD8ov0(2/2) AAS
>>117
プログレスバーでググってみてはどうか
119: (アウアウエー Sa52-PKj8) 2018/04/21(土)13:49 ID:gbvJ8fZ/a(1) AAS
時空連続体と空目した
120
(1): (ワッチョイ 4ec9-pa6j) 2018/04/21(土)18:22 ID:V5ZTEj450(1) AAS
プログレスバーってもろデジタルメーターじゃないですか

数百〜数千の筋繊維を一本の糸で表現できるような関数はないですかね
121: (ワッチョイ b7e3-i2qG) 2018/04/21(土)18:29 ID:LQq77Lfe0(1) AAS
you!画像ファイル扱っちゃいなyo!
122: (ワッチョイ 4e9a-9jjH) 2018/04/21(土)18:52 ID:rKiuu7+10(1) AAS
>>120
>>117のアナログメーターも全く関係ないんだけど?
筋線維もよく意味が分からないし、糸の振動の軌跡の描画みたいなことやりたいのなら自分で作るしかないよ
123
(2): (アウーイモ MM47-S9Qq) 2018/04/22(日)00:35 ID:XfnBBJY5M(1/2) AAS
プリンタの印刷設定の縦横を変更したいです。
DefaultPageSettings.Landscape プロパティから変えられるのは確認しましたが
一時的なものではなく、プログラムが終了したあとも変わったままにしておきたいのですが
なにか方法はないでしょうか?
外部リンク[cgi]:bbs.wankuma.com
このサイトも参考にしてSetHdevmodeなどもやってみましたが、プログラム終了後にもとに戻ってしまいます。
Windows7,10 64bitです
124: (ワッチョイ 4ee8-9jjH) 2018/04/22(日)00:38 ID:2TRizD7z0(1) AAS
筋繊維を糸で表現ってそれもう物理演算じゃん
125: (ワッチョイ 7ae7-5Mny) 2018/04/22(日)01:10 ID:6eouzp2p0(1) AAS
何がしたいのかよう分からん
>数百〜数千の筋繊維を一本の糸で表現できるような関数
が欲しいなら
「アナログメーター」なんて単語は出てこんと思うのだが

なんか特殊な知識が必要なことやってるなら
なおさらキチンと説明しないといかんだろう
126
(2): (アウアウエー Sa52-PKj8) 2018/04/22(日)02:16 ID:I1dKrIqPa(1) AAS
>>123
次回そのプログラムを起動した時も同じ設定が適用されるようにしたい、
という意味なら、Landscape を永続化すればいいだけでしょう。

同じ設定が他のプログラムにも適用されるようにしたい、って意味なら、
たぶんそんなことは出来ないんじゃないかと...
よく知らんけど
127: (アウーイモ MM47-S9Qq) 2018/04/22(日)07:35 ID:XfnBBJY5M(2/2) AAS
>>126
後者の方を考えています。
なにか方法があればいいのですが、、、
128
(1): (ワッチョイ e717-9jjH) 2018/04/22(日)09:24 ID:RctEGmkE0(1) AAS
他のプログラムでも同じ設定を使いたいんならプリンタドライバの設定変更以外に方法はない
てかそれってC#関係ないよね
129: (ワッチョイ 0bb3-9jjH) 2018/04/22(日)19:36 ID:YjWQK7FP0(1) AAS
[[['[] ]]] { {] ]][ '[][][] [][] [][][]  [] '[] []
130: (ササクッテロラ Sp3b-0nT5) 2018/04/22(日)21:23 ID:AB//w8nmp(1/2) AAS
c#勉強始めたての者です。
indexofで文字列を検索しようとしているのですが、長文を検索するとエラーが出てしまいます。

MSDNを見ると戻り値がint32とあり、戻り値がintの範囲を超えるとlongエラーになるように推測していますが対応方法はあるのでしょうか。
131: (ササクッテロラ Sp3b-0nT5) 2018/04/22(日)21:24 ID:AB//w8nmp(2/2) AAS
すみません上記文中のlongは誤植ですので読み飛ばしてください。
132: (ワッチョイ 4703-goBS) 2018/04/22(日)21:30 ID:PsQCMKRd0(1) AAS
そう言われるともうlongしか見えない
133: (ワッチョイ 3aac-im5j) 2018/04/22(日)21:37 ID:hhQLBFvv0(1) AAS
文字数がintに収まるように文字列を切り出しながら検索すればいいんじゃないか
もちろん切れ目に検索対象の文字列が有るときの対策して切り出さなきゃならんけど
134: (ワッチョイ b3e3-0nT5) 2018/04/22(日)22:10 ID:VNNE7LSc0(1) AAS
ありがとうございます。
matchメソッドというのを見つけました。
全然見つからなかったのに投稿し出来すぐ見つかるものですね。
matchで出来なかったらint分割にトライしようと思います。
135
(2): (ワッチョイ 3bc3-9jjH) 2018/04/22(日)22:23 ID:f9F/Sp5R0(1/3) AAS
フォーム上のコントロールを、プログラムから参照するいい方法はないでしょうか

SplitContainer上に配置した合計20個のチェックボックスについて、textをファイルから
読み込んだものに動的に変更したいと考えています

手元の書籍(作って覚えるc#)では、forループの中で

splitContainer1.Panel2.Controls[i].Text = mistakeText;

という形でやっていましたが、今回自分で用意したフォームはほかにもテキストボックスや
ラベルがあり、うまくチェックボックスを対象としてくれません
省10
136
(1): (ワッチョイ 4e9a-9jjH) 2018/04/22(日)22:25 ID:tqpEX+7y0(1) AAS
>>135
if (Controls[i] is CheckBox)
137
(3): (アウアウエー Sa52-PKj8) 2018/04/22(日)22:43 ID:VtQV/Dmoa(1) AAS
>>135
根本的に考え違いをしてると思う。
たぶんありもしないものをあるはずだと勝手に思い込んでる。

コントロールをテーブル参照したいなら自分で明示的にテーブル(配列)を
宣言しましょう。

デザイナには君が欲しいと思っているものを忖度して自動で作ってくれるような
都合のいい機能は存在しない。
138
(1): (ワッチョイ 3bc3-9jjH) 2018/04/22(日)23:18 ID:f9F/Sp5R0(2/3) AAS
>>136
とりあえずチェックボックスだけを選択することは可能になりました
順番はやはり思っているとおりにいきませんが、これは実行結果を見つつ、デザイナで
並べ替えるしかないかなと思い始めました

>>137
デザイナが忖度してくれるとは思っていないので、プロパティか何かで明示的に選択する
事ができないかな、と思ったのです
省3
139
(1): (ワッチョイ b7e3-i2qG) 2018/04/22(日)23:35 ID:Kp2niQOT0(1) AAS
>>138
コントロールに名前付ければいいじゃん
フォームにあるコントロールをどうやって特定したいと思ってるの?
140
(2): (ワッチョイ 3bc3-9jjH) 2018/04/22(日)23:50 ID:f9F/Sp5R0(3/3) AAS
>>139
例えば
Panel.Controls.CheckBox[i]
みたいな形で指定できればいいなと思ってるんですが、残念ながらそうできないですね

>>137
が書いている、自分で明示的にテーブルを宣言するというのは、例えば
cbox[1] = CheckBox1;
省2
141: (ワッチョイ b7e3-i2qG) 2018/04/23(月)00:02 ID:Xa6TKCtV0(1/4) AAS
>>140
意味がわからない
何がしたいの?

?コントロールを特定する必要がある
?複数のコントロールに共通の処理がしたい

?にしか目が行ってないけど?をやらなきゃいけない時点で
?の方法なんてエレガントにできたってウンコブリブリじゃん
142: (ワッチョイ 4e81-txNp) 2018/04/23(月)02:11 ID:kNAX3uRd0(1) AAS
オムツの取り替えまでやって欲しい要介護は大人しくVBやってろ
143
(1): (アウアウエー Sa52-PKj8) 2018/04/23(月)03:09 ID:0OUySOiKa(1) AAS
>>140
だから、配列が欲しいなら配列を自分で作ろうよ。

配列が欲しい、でもなんだか自分で配列を書くのは嫌だ。
この発想がおかしい。

var cbs = new[] {CheckBox1, CheckBox2, ...};

これ書くのがそんなに面倒?
変な方向に努力する方が余程面倒でしょ
省1
144
(1): (ワッチョイ 3bc3-9jjH) 2018/04/23(月)06:08 ID:wp3u/AuE0(1/4) AAS
>>143
配列を書くのは別に面倒でもなんでもないです
コピペしてちょっと直せば済むので

ただ、コピペで済む内容なら、コードで表現する方法があるのではないかと思ったのです
「新しくなにかプロパティを実装する」のではなく、「このプロパティを参照するとわかる」
という情報が存在するのかと考えました

>>137
省1
145
(1): (ワッチョイ b7e3-i2qG) 2018/04/23(月)06:12 ID:Xa6TKCtV0(2/4) AAS
>>144
それって同じフォーマットの行が並んだ設定ファイルみたいになんでしょ?
どの部分を自動でやってくれると思ってん?
146
(2): (ワッチョイ 3bc3-9jjH) 2018/04/23(月)07:30 ID:wp3u/AuE0(2/4) AAS
>>145
自動でやってくれると言うか、Controls[n] の n に相当する部分を、何らかのプロパティで
持っているのではないかと思ったのです
それがわかれば、IDEでプロパティを書き換えてやればそれで済むな、と

あるいはそれがなければ、例えば

for (int i = 0; i < CBOX_ELEMENTS; i++) {
string s = "checkBox" + (i+1).ToString();
省3
147: (アウアウカー Sa43-AqIk) 2018/04/23(月)07:45 ID:7CTglbRxa(1) AAS
配列作って突っ込んどくのが何より簡単だし自由だろ
148
(1): (ワッチョイ 578a-/Wij) [sage釣] 2018/04/23(月)08:09 ID:voecBiJS0(1) AAS
>>146
インデクサじゃ駄目なの?
149
(1): (ドコグロ MM83-i2qG) 2018/04/23(月)08:16 ID:C4a+50u5M(1) AAS
>>146
ちがくね?
お前がやりたいのって別のデータとid(?)が一致する項目にデータを入れていきたいんじゃねーの?
でもそれってコントロールを特定する必要があるんだよね?
コントロールとデータを紐付ける何かはあるの?
150: (ドコグロ MM92-xI9k) 2018/04/23(月)08:33 ID:KdhM7QliM(1) AAS
GetAllControlsのカウント取るとかそういう?
151: (ワンミングク MM8a-/Wij) [sage釣] 2018/04/23(月)08:37 ID:+9lDlXeaM(1/2) AAS
Type.GetPropertiesの方かな
152: (ワッチョイ b7e3-9jjH) 2018/04/23(月)09:14 ID:y08K2+qf0(1) AAS
VB6はコントロール配列があったけどなー。.Netの世界にはないからの。
153
(3): (ワッチョイ 4ee8-9jjH) 2018/04/23(月)12:01 ID:joGGyVH30(1) AAS
外部リンク[html]:dobon.net
名前で探せばいいのでは?
154
(2): (アウアウエー Sa52-PKj8) 2018/04/23(月)12:30 ID:b1ST+81Ba(1/3) AAS
だから配列に突っ込めば済む話を何でわざわざより面倒な方法で解決しようとするのw
155
(3): (オッペケ Sr3b-ceek) 2018/04/23(月)12:34 ID:HUKatAJtr(1/2) AAS
>>149
いや、単純にファイルから読み込んだ名前で、チェックボックスの文字を変えたいだけです
例えばファイルの中身が 犬,猿,雉だったら?CheckBox1-3の文字をそれぞれ犬、猿、雉にしてCheckBox4-20は「使用不可」にでもするような
だから機械的に参照できればよかったのです

>>153
これでほぼ解決です、ありがとうございます
156: (オッペケ Sr3b-ceek) 2018/04/23(月)12:39 ID:HUKatAJtr(2/2) AAS
>>154
まあ一言でいうと、わざわざ自分で配列を作らなくても、それを実現する方法はすでに存在するだろうと思ってたのです
配列作ったら「そんなことしなくてもこう書けば一発で参照できるのに」って言われる方法があるんじゃないかと
157: (ワンミングク MM8a-/Wij) [sage釣] 2018/04/23(月)12:39 ID:+9lDlXeaM(2/2) AAS
>>155
その下にインデクサによる説明もあるだろw
158
(2): (ワッチョイ 9a7f-fvqh) 2018/04/23(月)13:33 ID:48XgAlPp0(1/3) AAS
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.checkBoxes = this.Controls.OfType< CheckBox >().OrderBy( x => x.Name ).ToArray();
}
省2
159
(2): (ワッチョイ 8aeb-8q6u) 2018/04/23(月)17:06 ID:FWk6fNJV0(1) AAS
public class B : private A
{

}

みたいなこと C# じゃ出来ないんだっけ?
160: (スップ Sd5a-lyLw) 2018/04/23(月)17:10 ID:BY7S8wKYd(1/3) AAS
>>159
継承元をprotectedにすれば継承したクラスからしかアクセスできないようにはできる
161: (アウアウエー Sa52-PKj8) 2018/04/23(月)17:25 ID:b1ST+81Ba(2/3) AAS
>>159
何言ってるのかわかりませんw
162: (スップ Sd5a-lyLw) 2018/04/23(月)18:05 ID:BY7S8wKYd(2/3) AAS
そのクラス経由でしかアクセスできないようにしたいってことじゃないの?
163
(1): (ワントンキン MM8a-Pnzf) 2018/04/23(月)18:18 ID:CCSIsfHWM(1) AAS
ゆとりしか居ないのかなぁ
C#はprivate継承はサポートしてないよ
フィールドに持たせて移譲メソッド書くしかない
164: (スプッッ Sdba-0snq) 2018/04/23(月)18:31 ID:VMRJeQmYd(1) AAS
>>163
ゆとりなんてもうオッサンやでおじいちゃん?
165: (スップ Sd5a-lyLw) 2018/04/23(月)18:38 ID:BY7S8wKYd(3/3) AAS
これ参考にすればいいのかな
外部リンク[html]:ufcpp.net

protected internal 同一プロジェクト内のクラス内部、または、派生クラスの内部からのみアクセス可能

private protected (C# 7.2 以降)同一プロジェクト内のクラス内部、かつ、派生クラスの内部からのみアクセス可能
こういうこと?
166
(1): (ワッチョイ b7e3-i2qG) 2018/04/23(月)18:52 ID:Xa6TKCtV0(3/4) AAS
>>155
それで解決しねーだろ
バラっバラにくんじゃね?
俺はてっきりコントロールの
座標でソートして名前付けたいのかと思った
167
(3): 135 (ワッチョイ 3bc3-9jjH) 2018/04/23(月)21:02 ID:wp3u/AuE0(3/4) AAS
皆様いろいろありがとうございました

>>158
書いてくださった方法が、ほぼ私が求めていたものを完璧に実現しています
抱かれてもいいくらい惚れました
ただ、試してみたところピックアップされる順番は必ずしもコントロールを配置した
順番通りではなく、はっきりした法則性も見いだせませんでした
テストプログラムを書いて、インデックスと見た目を一致させるようデザイナで
省17
168
(1): (ワッチョイ 47c9-8E8L) 2018/04/23(月)21:07 ID:QriAiZTC0(1/2) AAS
今日からC#勉強し始めたけど、
結構ネスト深くなる言語っぽいね、これ。こんな…

namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
省17
169
(1): (アウアウエー Sa52-PKj8) 2018/04/23(月)21:09 ID:b1ST+81Ba(3/3) AAS
>>167
いやいやいやcheckBox1 とか checkBox2 とかはリテラルじゃないってw
ただの識別子(フィールド名)

コードにリテラルを埋め込むというか、コンパイル時に誤りを検出できない
(普通の理解では)お行儀の悪いコードになるのはむしろ>>153みたいな方法だってw
170: (ワッチョイ 47c9-8E8L) 2018/04/23(月)21:09 ID:QriAiZTC0(2/2) AAS
namespaceとかcheckedがブロックなのが何かなぁ…
171: (ワッチョイ 3bc3-9jjH) 2018/04/23(月)21:27 ID:wp3u/AuE0(4/4) AAS
>>169
おっと・・・
どうやら根本的なところで間違っていたようです
書いてあるとおりだとすると、質問とレスが噛み合っていない理由がわかりました
わざわざ行儀の悪い書き方を探していたのか
172: (ワッチョイ 9a7f-fvqh) 2018/04/23(月)21:37 ID:48XgAlPp0(2/3) AAS
>>167
>>158はOrderBy()でチェックボックスの名前(Name)順にソートしてる。
Nameの代わりに、TabIndexかTagを設定してそれを利用しても良い。
というか、Nameだとチェックボックスが10個以上になるとソートが望むようにならないか。
173
(2): (ワッチョイ b7e3-i2qG) 2018/04/23(月)21:45 ID:Xa6TKCtV0(4/4) AAS
>>167
おそらく配置したコントロールから欲しい情報は座標とサイズぐらいしかない
それらの特定情報は別ファイルにある
なのでコントロールが上から
もしくは左からか順番に取得できれば
別ファイルに記述した通りの順番で情報を並べることができる
Controlsで取得できる順番はよく知らないけど
省1
174: (ワッチョイ 9a7f-fvqh) 2018/04/23(月)22:10 ID:48XgAlPp0(3/3) AAS
>>173
Controlsが返す順番は保証されてないけど、自分でソートすれば良い。

(1)TabIndex順 (各CheckBoxにタブオーダー(TabIndex)を設定しておく)
this.checkBoxes = this.Controls.OfType< CheckBox >().OrderBy( x => x.TabIndex ).ToArray();
(2)Tag順 (各CheckBoxのTagに数値を設定しておく)
this.checkBoxes = this.Controls.OfType< CheckBox >().OrderBy( x => x.Tag ).ToArray();
(3-1)Location順(左から)
省3
175
(1): (ワッチョイ 179b-Jtac) 2018/04/23(月)22:33 ID:fnmaDcrK0(1) AAS
>>155
そういう使い方なら、チェックボックスを先に作っておくんじゃなくて
ファイルから読んだ内容で動的に作っていった方が手っ取り早い
どうせチェックボックスは全部等間隔に並べるんじゃろ?
176: (ワッチョイ 73d7-TcdZ) 2018/04/23(月)22:53 ID:pYJnxPYX0(1) AAS
WPFのサンプルでありそうな話だ
177: (アウアウアー Sa06-S9Qq) 2018/04/23(月)23:04 ID:0nhwdYRFa(1) AAS
>>126>>128
>>123です
SetPrinter関数を使用することで実現できました。ありがとうございました。
178
(2): (ワッチョイ 1781-5Fj3) 2018/04/24(火)00:40 ID:U7B9av/W0(1) AAS
>>168
そのtry意味ないんだけど。。
179
(1): (ワッチョイ 239f-xI9k) 2018/04/24(火)00:55 ID:P/LpDfjz0(1) AAS
>>178
ネストのイメージ書きたかっただけだろうよ
180: (ワッチョイ 3bc3-9jjH) 2018/04/24(火)06:02 ID:PLNFE8AC0(1) AAS
>>173
なるほど、コントロールから情報を取得する必要があると思えたのですね
実際はそれ以前の段階でしたが

>>175
それも考えたのですが、デザイナで画面を確認したいので、静的に用意して
おきたいという結論になりました
動的に置くほうが難易度高そうだ、と思ったのもありますが
181: (ワッチョイ 47c9-8E8L) 2018/04/24(火)11:44 ID:MJ0NRymv0(1/10) AAS
>>178-179

「意味無い」って、どういう意味?
182: (ワッチョイ 47c9-8E8L) 2018/04/24(火)12:45 ID:MJ0NRymv0(2/10) AAS
うぇぇ、C#、goto文使えるし…
183: (ワッチョイ 47c9-8E8L) 2018/04/24(火)13:15 ID:MJ0NRymv0(3/10) AAS
うーん、string x = "10"; に対して
x.toString(); するんじゃなくて、int.Parse(x); するのか…。
xオブジェクトにintegerを吐き出させるのではなく、
integerオブジェクトにxオブジェクトを与えてintegerを吐き出させる…。

これは初めての体験だな…。
184: (ワッチョイ 4ec9-9jjH) 2018/04/24(火)13:18 ID:Ajvhvjmq0(1/2) AAS
何もかも間違っててワロタw
185: (ワッチョイ 47c9-8E8L) 2018/04/24(火)13:34 ID:MJ0NRymv0(4/10) AAS
なにゆえ?
186: (ワッチョイ 47c9-8E8L) 2018/04/24(火)13:45 ID:MJ0NRymv0(5/10) AAS
expression-bodied関数は、なんかエロいな…
187: (ワッチョイ 47c9-8E8L) 2018/04/24(火)13:46 ID:MJ0NRymv0(6/10) AAS
やってる事は違うけど、考え方的にはCのマクロに近いのかな…
188: (ワッチョイ 47c9-8E8L) 2018/04/24(火)13:50 ID:MJ0NRymv0(7/10) AAS
LINQ…、エロいな…。
189: (ワッチョイ 47c9-8E8L) 2018/04/24(火)13:53 ID:MJ0NRymv0(8/10) AAS
関数名がアッパーキャメルなのは感心せんなぁ…
190
(1): (ワッチョイ 17d3-9jjH) 2018/04/24(火)14:00 ID:a0zqzGgA0(1) AAS
ここ質問スレなんで日記は他所でな
191: (ワッチョイ 47c9-8E8L) 2018/04/24(火)14:04 ID:MJ0NRymv0(9/10) AAS
なんだよ、ToString()メソッドあるじゃねぇかよ…。
192
(1): (ワッチョイ 47c9-8E8L) 2018/04/24(火)14:05 ID:MJ0NRymv0(10/10) AAS
>>190

ごめん。

質問です。なんだよ、ToString()メソッドあるじゃねぇかよ…
193
(2): (ワッチョイ 9a98-9jjH) 2018/04/24(火)14:39 ID:5gRbnpaG0(1/2) AAS
VisualStudioでC#のフォームアプリを開発するときに
プロジェクトのプロパティから
出力の種類を「コンソールアプリ」にして
デバッグ用のConsole.WriteLineを出力できるようにしてるんだけど
リリースするときは、種類を「Windowsアプリ」にするだけで
コード中のConsole.WriteLineはコメントアウトとかしなくても
大丈夫ですか?
194
(1): (ワッチョイ 9a7f-fvqh) 2018/04/24(火)15:12 ID:aRAC41/V0(1) AAS
>>193
デバッグ用に文字列を出したいなら、using System.Diagnostics;して、Debug.WriteLine()とか使うべき。
これならリリースビルドにするだけで無効になるからコメントアウトも不要。
リリースビルドでも使いたいなら、Trace.WriteLine()。
195
(1): (ワッチョイ fac3-TcdZ) 2018/04/24(火)17:00 ID:Le/zmSZT0(1) AAS
>>193
パイプで繋ぐとみえちゃうよ
196: (ワッチョイ 9a98-9jjH) 2018/04/24(火)17:22 ID:5gRbnpaG0(2/2) AAS
>>194
おお、ちゃんとデバッグ用のがあるんだ
聞いてよかった
ありがとう

>>195
なるほど
別に見られて困るようなものでも無かったけど
省5
1-
あと 806 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.028s