!extend:checked:vvvvv:1000:512
■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/
■コードを貼る場合はこちら
http://ideone.com/
■前スレ
C#, C♯, C#相談室 Part93
http://mevius.5ch.net/test/read.cgi/tech/1492818720/
■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
C#, C♯, C#相談室 Part94
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 935f-5Uxj)
2019/03/20(水) 18:57:36.47ID:ZZcTomnN0460デフォルトの名無しさん (ワッチョイ d993-H12r)
2021/03/31(水) 00:32:20.38ID:bnFDknJn0 403エラー出るな
461デフォルトの名無しさん (ワッチョイ b1b5-lMfL)
2021/03/31(水) 00:51:58.68ID:gHPQ065T0462デフォルトの名無しさん (ワッチョイ 6502-12p/)
2021/03/31(水) 06:54:28.60ID:3seTCUNu0463デフォルトの名無しさん (ワッチョイ d9c9-UUyU)
2021/03/31(水) 22:47:35.33ID:I8AeNzgd0 こちらではどうでしょうか
https://media-uploader.work/?mode=detail&id=7574&original=1&key=d19f328b-ab29-4095-84be-2a9edfc7af4c
https://media-uploader.work/?mode=detail&id=7574&original=1&key=d19f328b-ab29-4095-84be-2a9edfc7af4c
464デフォルトの名無しさん (ワッチョイ b1b5-lMfL)
2021/03/31(水) 23:25:05.65ID:gHPQ065T0465デフォルトの名無しさん (ワッチョイ 6502-12p/)
2021/03/31(水) 23:26:52.18ID:3seTCUNu0 再現しないっす。
win10 pro + vs2019
win10 pro + vs2019
466デフォルトの名無しさん (テテンテンテン MM96-fTYp)
2021/04/01(木) 10:48:51.53ID:tyY0ZWw2M Linqで.max()とかしたときに、その要素が配列の何番目かも取れますか?
やっぱら普通にloop回して値なめてインデックスも保存するしかないかな?
やっぱら普通にloop回して値なめてインデックスも保存するしかないかな?
467デフォルトの名無しさん (ワッチョイ 25ad-N2Bw)
2021/04/01(木) 11:03:37.82ID:wAdk3gIy0 indexOf
遅いけど
遅いけど
468デフォルトの名無しさん (ワッチョイ f579-Cd0d)
2021/04/01(木) 11:04:52.05ID:DPgukaDD0 そうだね
var index = list.Select((x, i) => new { x, i }).Aggregate((a, b) => a.x > b.x ? a : b).i;
var index = list.Select((x, i) => new { x, i }).Aggregate((a, b) => a.x > b.x ? a : b).i;
469466 (テテンテンテン MM96-fTYp)
2021/04/01(木) 11:23:32.49ID:tyY0ZWw2M 即レスあざっす。
コードはシンプルですが、やっぱりループは2周回しちゃいますよね?
aggregateは使いなれてないので勉強してみます。
コードはシンプルですが、やっぱりループは2周回しちゃいますよね?
aggregateは使いなれてないので勉強してみます。
470デフォルトの名無しさん (ワッチョイ f579-Cd0d)
2021/04/01(木) 12:46:48.51ID:DPgukaDD0 上のコードは二周してないよ
Aggregateがループ一周するとき、Selectでインデックス付きの値に変換してるだけ
自分でIEnumeratorを実装してWriteLineなりステップ実行なりで確かめてみるといい
Aggregateがループ一周するとき、Selectでインデックス付きの値に変換してるだけ
自分でIEnumeratorを実装してWriteLineなりステップ実行なりで確かめてみるといい
471466 (テテンテンテン MM96-fTYp)
2021/04/01(木) 12:56:26.15ID:tyY0ZWw2M ありがとうございます。
aggregateのたびにselectが一個ずつ呼ばれてその都度newってことですね。
aggregateのたびにselectが一個ずつ呼ばれてその都度newってことですね。
472デフォルトの名無しさん (ワッチョイ 12da-iZ5s)
2021/04/01(木) 21:46:03.95ID:/6s6U5+D0 >463
Win10 Pro 20H2 VS2019 16.9.2 再現した
Win10 Pro 20H2 VS2019 16.9.2 再現した
473デフォルトの名無しさん (ワッチョイ 85c9-0pr0)
2021/04/02(金) 01:05:47.48ID:wUk/pE7N0474デフォルトの名無しさん (ワッチョイ 23da-a8W1)
2021/04/02(金) 21:38:24.91ID:l3iQL5930 前に似たような問題踏んだんだけど、当時どうやったかな……
ちょっとソースコード消したっぽくて見当たらない
ちょっとソースコード消したっぽくて見当たらない
475デフォルトの名無しさん (テテンテンテン MM4b-Ya2g)
2021/04/03(土) 08:07:46.79ID:xRi4BzBEM int[] hoge ={1,5,8,3,6,1,2,5,4,1,1,4,8,1};
みたいな配列がある時に一番出現回数が多い要素を取る方法ある?
この例だと1が5個あるから1みたいな。
1の出現回数、2の出現回数、3の…って数えた結果を入れた配列作って、またその配列を頭からなめるしかないかな?
普通に↑書くとなんだかんだで10行に全然収まらず汚くなっちゃいます。
みたいな配列がある時に一番出現回数が多い要素を取る方法ある?
この例だと1が5個あるから1みたいな。
1の出現回数、2の出現回数、3の…って数えた結果を入れた配列作って、またその配列を頭からなめるしかないかな?
普通に↑書くとなんだかんだで10行に全然収まらず汚くなっちゃいます。
476デフォルトの名無しさん (ワッチョイ 2501-0pr0)
2021/04/03(土) 08:28:22.25ID:2jFdn4xt0 それ課題? 宿題?
477デフォルトの名無しさん (テテンテンテン MM4b-KN+/)
2021/04/03(土) 08:32:09.99ID:R+IP0R1+M hoge
.GroupBy(x => x)
.Select(x => new { Value = x.Key, Count = x.Count() })
.OrderByDescending(x => x.Count)
.FirstOrDefault()
.Value
とかかな、動かして確認してないけど
.GroupBy(x => x)
.Select(x => new { Value = x.Key, Count = x.Count() })
.OrderByDescending(x => x.Count)
.FirstOrDefault()
.Value
とかかな、動かして確認してないけど
478デフォルトの名無しさん (ワッチョイ ad78-0pr0)
2021/04/03(土) 09:13:26.17ID:IGI/+wu80 100%宿題だろ
479デフォルトの名無しさん (ワッチョイ 1b62-7hpE)
2021/04/03(土) 09:15:40.41ID:tu4vqFkZ0 普通にforeachでやれば?
なんだかんだしても10行もかからない
なんだかんだしても10行もかからない
480デフォルトの名無しさん (ワッチョイ 15e6-p1/t)
2021/04/03(土) 09:24:02.01ID:tmsfTtPy0 >>477
それでも正しい答えを返すけど、グループ化後、カウントするのに1巡し、ソートして (最大カウントを取得して) いるから、ソート結果を他の用途で使う必要がないならムダがある。
1巡で最大カウントを探すならこう。
hoge
.GroupBy( x => x )
.Aggregate(new { Value = (int?)null, Count = 0 },
(total, next) => next.Count() switch {
var count when count > total.Count => new { Value = (int?)next.Key, Count = count },
_ => total,
})
.Value;
switch 式を使っているのは next.Count() を変数 count で受けるため。
それでも正しい答えを返すけど、グループ化後、カウントするのに1巡し、ソートして (最大カウントを取得して) いるから、ソート結果を他の用途で使う必要がないならムダがある。
1巡で最大カウントを探すならこう。
hoge
.GroupBy( x => x )
.Aggregate(new { Value = (int?)null, Count = 0 },
(total, next) => next.Count() switch {
var count when count > total.Count => new { Value = (int?)next.Key, Count = count },
_ => total,
})
.Value;
switch 式を使っているのは next.Count() を変数 count で受けるため。
481デフォルトの名無しさん (ワッチョイ 15e6-p1/t)
2021/04/03(土) 09:56:22.52ID:tmsfTtPy0 同着1位が複数ある場合に備えて少し拡張。結果は int ではなく IEnumerable<int> で返るようになります。
hoge
.GroupBy( x => x )
.Aggregate(new { Value = Enumerable.Empty<int>(), Count = 0 },
(total, next) => next.Count() switch {
var count when count > total.Count => new { Value = Enumerable.Repeat(next.Key, 1), Count = count },
var count when count == total.Count => new { Value = total.Value.Concat(new [] { next.Key }), Count = count },
_ => total,
})
.Value;
hoge
.GroupBy( x => x )
.Aggregate(new { Value = Enumerable.Empty<int>(), Count = 0 },
(total, next) => next.Count() switch {
var count when count > total.Count => new { Value = Enumerable.Repeat(next.Key, 1), Count = count },
var count when count == total.Count => new { Value = total.Value.Concat(new [] { next.Key }), Count = count },
_ => total,
})
.Value;
482475 (テテンテンテン MM4b-Ya2g)
2021/04/03(土) 11:48:23.26ID:xRi4BzBEM 回答色々ありがとうございます。
LINQ慣れてないので、これから481さんのを、確認したいと思います。
動作確認用にまずはシンプルにこんな感じに書いてみました。
loopで適当に
for( int i=0;i<hoge.length;++i){
hogeIndex[hoge[i]]+=1;}
で集計と最大値みて
Array.IndexOf(higeIndex,max)
LINQ慣れてないので、これから481さんのを、確認したいと思います。
動作確認用にまずはシンプルにこんな感じに書いてみました。
loopで適当に
for( int i=0;i<hoge.length;++i){
hogeIndex[hoge[i]]+=1;}
で集計と最大値みて
Array.IndexOf(higeIndex,max)
483デフォルトの名無しさん (ワッチョイ a301-51IN)
2021/04/03(土) 12:43:42.91ID:nkSIG8qO0 using MoreLinq;
int[] hoge ={1,5,8,3,6,1,2,5,4,1,1,4,8,1};
hoge.CountBy(x=>x).ForEach(x=>Console.WriteLine(x));
[1, 5]
[5, 2]
[8, 2]
[3, 1]
[6, 1]
[2, 1]
[4, 2]
int[] hoge ={1,5,8,3,6,1,2,5,4,1,1,4,8,1};
hoge.CountBy(x=>x).ForEach(x=>Console.WriteLine(x));
[1, 5]
[5, 2]
[8, 2]
[3, 1]
[6, 1]
[2, 1]
[4, 2]
484475 (テテンテンテン MM4b-Ya2g)
2021/04/03(土) 13:16:22.63ID:G1gOaHFKM morelinq初めて知りました。
他にもimportedLinqとかみんな今のLINQに物足りなさ感じで色々作ってんですね。多言語にあるものは純正LINQにもガンガン取り込んで欲しい。
他にもimportedLinqとかみんな今のLINQに物足りなさ感じで色々作ってんですね。多言語にあるものは純正LINQにもガンガン取り込んで欲しい。
485デフォルトの名無しさん (ワッチョイ d573-XUMB)
2021/04/03(土) 22:33:48.62ID:+IgRciBO0 あの目的で481みたいなソース書くやつがいたらわしだったらチームから外すな。
万事あんなソースで埋め尽くされてたら、
超簡易で済むソースがわけわからんもんになるわ。
万事あんなソースで埋め尽くされてたら、
超簡易で済むソースがわけわからんもんになるわ。
486デフォルトの名無しさん (ワッチョイ 8d33-eEFg)
2021/04/04(日) 00:47:44.32ID:ok1vxTHs0 >>485
チームから外された人はどうなってしまうのですか?
チームから外された人はどうなってしまうのですか?
487デフォルトの名無しさん (ワッチョイ adad-s14g)
2021/04/04(日) 01:33:04.10ID:LsucXWBN0 社史編纂室へ
488デフォルトの名無しさん (ワッチョイ cbda-2D+M)
2021/04/04(日) 02:36:11.57ID:ciXsbyqc0 ソイレントグリーン化
489デフォルトの名無しさん (ワッチョイ 15e6-p1/t)
2021/04/04(日) 02:57:20.53ID:RzHfgfdU0 >>485
まあわかる。というか、そういう批判が来ることを承知で書いた。
LINQ は map, filter に強いが reduce に弱い。reduce する場面では無理に LINQ にこだわらずイテレーション回した方がよい。
なんで LINQ で書いてみたかっていうと、そうは言っても手続を混ぜずに関数型で書きたいって場面もあるから、思考パズルとして。
どうせ、この課題は学校の宿題とかだろうし。さすがにチーム開発の場面で濫用はしない。
プログラムはリソース制御とデータ変換に分かれるが、データ変換を純粋に連ねていく場面では LINQ から外れたくないってこともある。
そういう場合は 481 のようなのをメソッド定義し、中身は隠蔽してモジュール化しておいて、宣言的に LINQ メソッドを連ねていく。
LINQ to Object なら手続が混じっても問題ないから LINQ にこだわりすぎるのはよくないけれども、一方で LINQ to Entities にする場合は完全に関数型で書かざるを得ない。だから、LINQ to Entities の使い手なら、いかに関数型に閉じて記述するか、っていう思考訓練はしておく必要がある。(481 の例は Aggregate 使っているから LINQ to Entities にならないし、現状の LINQ to Entities には限界があるけど。)
まあわかる。というか、そういう批判が来ることを承知で書いた。
LINQ は map, filter に強いが reduce に弱い。reduce する場面では無理に LINQ にこだわらずイテレーション回した方がよい。
なんで LINQ で書いてみたかっていうと、そうは言っても手続を混ぜずに関数型で書きたいって場面もあるから、思考パズルとして。
どうせ、この課題は学校の宿題とかだろうし。さすがにチーム開発の場面で濫用はしない。
プログラムはリソース制御とデータ変換に分かれるが、データ変換を純粋に連ねていく場面では LINQ から外れたくないってこともある。
そういう場合は 481 のようなのをメソッド定義し、中身は隠蔽してモジュール化しておいて、宣言的に LINQ メソッドを連ねていく。
LINQ to Object なら手続が混じっても問題ないから LINQ にこだわりすぎるのはよくないけれども、一方で LINQ to Entities にする場合は完全に関数型で書かざるを得ない。だから、LINQ to Entities の使い手なら、いかに関数型に閉じて記述するか、っていう思考訓練はしておく必要がある。(481 の例は Aggregate 使っているから LINQ to Entities にならないし、現状の LINQ to Entities には限界があるけど。)
490デフォルトの名無しさん (アウアウウー Sae9-kjVL)
2021/04/04(日) 03:29:46.02ID:Vg+CQPm0a LINQ乱用せずに書いたらどうなるかなと思っていろいろ考えてみたけど
思ったより綺麗に書けんね。
結局>>483が使えるならこれが一番簡潔でいいな
っていうかヒストグラム求めるって標準のライブラリにありそうでなかったんだね。
思ったより綺麗に書けんね。
結局>>483が使えるならこれが一番簡潔でいいな
っていうかヒストグラム求めるって標準のライブラリにありそうでなかったんだね。
491デフォルトの名無しさん (ワッチョイ 55b5-vyem)
2021/04/04(日) 17:47:26.09ID:glgnW2pm0 >>488
どうか責任を以ってあなた様がお召し上がりください
どうか責任を以ってあなた様がお召し上がりください
492デフォルトの名無しさん (ワッチョイ 1b62-kjVL)
2021/04/05(月) 14:17:24.94ID:UvEZGDJy0 >>490
リンクを一切使わなくても別にって感じだけどな
var dic = new Dictionary<int, int>();
foreach(var h in hoge){
if(!dic.ContainsKey(h)) dic.Add(h, 0);
dic[h]++;
}
int maxCount;
List<int> maxKeys;
foreach(var pair int dic){
if(maxCount == pair.Value) maxKeys.Add(pair.Key);
else if(maxCount < pair.Value){
maxCount = pair.Value;
maxKeys = new List<int>(){ pair.Key };
}
}
リンクを一切使わなくても別にって感じだけどな
var dic = new Dictionary<int, int>();
foreach(var h in hoge){
if(!dic.ContainsKey(h)) dic.Add(h, 0);
dic[h]++;
}
int maxCount;
List<int> maxKeys;
foreach(var pair int dic){
if(maxCount == pair.Value) maxKeys.Add(pair.Key);
else if(maxCount < pair.Value){
maxCount = pair.Value;
maxKeys = new List<int>(){ pair.Key };
}
}
493デフォルトの名無しさん (アウアウウー Sae9-kjVL)
2021/04/05(月) 15:32:07.99ID:0Q3jeorWa >>492
個人の感想です、だけどあんまり綺麗じゃないよねそれ。
重要なのは何を使うか使わないかじゃなくて
読みやすいかじゃないかな。
LIN}Qを乱用云々と書いたのはそれは一般に読みづらいから
自分ならこの辺で手を打つかな。知らんけど
効率無視ならUniquelizeなんてメソッドはいらない
int[] hoge = { 1, 5, 8, 3, 6, 1, 2, 5, 4, 1, 1, 4, 8, 1 };
var uhoge = Uniquelize(hoge);
var histogram = uhoge.Zip(uhoge.Select(x => hoge.Count(y => x == y)), (x, y) => new { Item = x, Count = y });
var max = histogram.Aggregate((candidate, next) => next.Count > candidate.Count ? next : candidate);
....
static IEnumerable<T> Uniquelize<T>(IEnumerable<T> source) where T:IEquatable<T>
{
var list = new List<T>();
foreach (var item in source)
if (!list.Contains(item)) list.Add(item);
return list;
}
個人の感想です、だけどあんまり綺麗じゃないよねそれ。
重要なのは何を使うか使わないかじゃなくて
読みやすいかじゃないかな。
LIN}Qを乱用云々と書いたのはそれは一般に読みづらいから
自分ならこの辺で手を打つかな。知らんけど
効率無視ならUniquelizeなんてメソッドはいらない
int[] hoge = { 1, 5, 8, 3, 6, 1, 2, 5, 4, 1, 1, 4, 8, 1 };
var uhoge = Uniquelize(hoge);
var histogram = uhoge.Zip(uhoge.Select(x => hoge.Count(y => x == y)), (x, y) => new { Item = x, Count = y });
var max = histogram.Aggregate((candidate, next) => next.Count > candidate.Count ? next : candidate);
....
static IEnumerable<T> Uniquelize<T>(IEnumerable<T> source) where T:IEquatable<T>
{
var list = new List<T>();
foreach (var item in source)
if (!list.Contains(item)) list.Add(item);
return list;
}
494デフォルトの名無しさん (ワッチョイ 0597-Jtiw)
2021/04/05(月) 19:57:09.97ID:CDl0lfjE0 >>493
uniquelizeの方が、hashsetを作るより速いのかな?
uniquelizeの方が、hashsetを作るより速いのかな?
495デフォルトの名無しさん (ワッチョイ 4b10-0pr0)
2021/04/05(月) 21:21:17.60ID:RrZmsJGc0 int[] hoge = { 1, 5, 8, 3, 6, 1, 2, 5, 4, 1, 1, 4, 8, 1 };
var fuga = hoge.ToLookup(i => i).Select(g => new { g.Key, Count = g.Count() });
var fuga = hoge.ToLookup(i => i).Select(g => new { g.Key, Count = g.Count() });
496デフォルトの名無しさん (ワッチョイ a301-51IN)
2021/04/05(月) 21:33:20.67ID:P35uBEDX0497デフォルトの名無しさん (アウアウウー Sae9-kjVL)
2021/04/05(月) 21:53:51.88ID:N85JwZrFa498デフォルトの名無しさん (ワッチョイ a301-51IN)
2021/04/05(月) 22:06:00.32ID:P35uBEDX0499デフォルトの名無しさん (アウアウウー Sae9-kjVL)
2021/04/05(月) 22:11:34.00ID:N85JwZrFa500デフォルトの名無しさん (ブーイモ MM6b-VtYg)
2021/04/05(月) 22:20:07.88ID:fFJLFu4zM .NETの辞書はHashテーブルだからほとんど定数時間でアクセスできるよ
501デフォルトの名無しさん (アウアウウー Sae9-kjVL)
2021/04/05(月) 22:23:25.32ID:N85JwZrFa502デフォルトの名無しさん (ブーイモ MM6b-VtYg)
2021/04/05(月) 22:30:01.43ID:fFJLFu4zM うんだからほとんど定数時間ね
intのHash計算とバケツへのランダムアクセスは定数時間
運が悪いと短いシーケンシャルアクセスが入るかもしれないが確率的には気にしなくていい
intのHash計算とバケツへのランダムアクセスは定数時間
運が悪いと短いシーケンシャルアクセスが入るかもしれないが確率的には気にしなくていい
503デフォルトの名無しさん (ワッチョイ 1b62-7hpE)
2021/04/05(月) 23:25:12.51ID:UvEZGDJy0504デフォルトの名無しさん (ワッチョイ a301-51IN)
2021/04/05(月) 23:51:28.61ID:P35uBEDX0 Enumerable.Distinctでいいよね?
Dictinctの中身はこれ↓
Set<TSource> set = new Set<TSource>(comparer);
foreach (TSource element in source) {
if (set.Add(element)) yield return element;
}
Dictinctの中身はこれ↓
Set<TSource> set = new Set<TSource>(comparer);
foreach (TSource element in source) {
if (set.Add(element)) yield return element;
}
505デフォルトの名無しさん (ワッチョイ 1b62-7hpE)
2021/04/06(火) 00:36:46.27ID:1qFpIEwJ0 元がhashsetでいいかって内容だったからね
hashsetは型で重複がないことがわかりuhoge変数の仕様とも合致しているからより適切だと思うけど、別に気にする程じゃない
hashsetは型で重複がないことがわかりuhoge変数の仕様とも合致しているからより適切だと思うけど、別に気にする程じゃない
506デフォルトの名無しさん (テテンテンテン MM4b-Ya2g)
2021/04/06(火) 11:56:42.49ID:12/RlRALM LINQ盛り上がってるので、この流れで。
複数の配列の積集合求めたいときおすすめありますか?
intersectを順番にやってく?
複数の配列の積集合求めたいときおすすめありますか?
intersectを順番にやってく?
507デフォルトの名無しさん (スップ Sd43-lQ1w)
2021/04/06(火) 12:27:01.17ID:BBKNAvYgd 特にパフォーマンスが必要ないなら手軽に順次Enumerable.Intersect
多少パフォーマンスを求めたいならHashSet化して順次HashSet.IntersectWith
複数のコレクションの積集合を取る操作を頻繁に行うならそういうメソッドを作っておくが吉
多少パフォーマンスを求めたいならHashSet化して順次HashSet.IntersectWith
複数のコレクションの積集合を取る操作を頻繁に行うならそういうメソッドを作っておくが吉
508デフォルトの名無しさん (ワッチョイ a301-51IN)
2021/04/06(火) 19:13:29.90ID:wES9tagM0 件数のバラツキが大きいなら一番少ないのをHashSetして少ない順にIntersectWithしていくと多少高速
Enumerable.Intersectは引数で渡されるほうがSetに変換されるのでHashSetとは逆
Enumerable.Intersectは引数で渡されるほうがSetに変換されるのでHashSetとは逆
509デフォルトの名無しさん (テテンテンテン MM8e-uMyQ)
2021/04/13(火) 11:47:34.09ID:NVLgO6N7M windiws form applicationでreflectionを使って名前でForm1 class内で定義されたメソッドを呼びたいときはどうしたらいいですか?
var mtd = this.GetType().GetMethod(名前);
だと拾えませんでした。
var mtd = this.GetType().GetMethod(名前);
だと拾えませんでした。
510デフォルトの名無しさん (ワッチョイ 367c-9w1/)
2021/04/13(火) 12:31:02.66ID:TlP1ePoc0 thisって何よ
適切なBindingFlags指定すればいいんじゃね NonPublicとかInstanceとか
適切なBindingFlags指定すればいいんじゃね NonPublicとかInstanceとか
511デフォルトの名無しさん (ワッチョイ c633-1WRr)
2021/04/13(火) 12:39:46.74ID:LjzwNZrT0 実現させたいことと、やろうとしていることとがマッチしていない予感
512デフォルトの名無しさん (ワッチョイ 2b54-zuU1)
2021/04/13(火) 19:04:32.36ID:eLi1/5j/0 数年ぶりにForm使う事になりました。
Controlを座標決め打ちで配置する事になんとなく違和感感じるんですが、
Dock・Padding・Marginでレイアウトしていくのは避けるべきでしょうか?
例えば、1つのフォームを左右2つに分ける場合は、Dock.FillのPanelとDock.RigthのPanelを置いて、
それぞれのPanel内に配置するコントロールも、Dock・Margin・Paddingでレイアウトしたいです。
Controlを座標決め打ちで配置する事になんとなく違和感感じるんですが、
Dock・Padding・Marginでレイアウトしていくのは避けるべきでしょうか?
例えば、1つのフォームを左右2つに分ける場合は、Dock.FillのPanelとDock.RigthのPanelを置いて、
それぞれのPanel内に配置するコントロールも、Dock・Margin・Paddingでレイアウトしたいです。
513デフォルトの名無しさん (ワッチョイ 1724-AglQ)
2021/04/13(火) 19:38:45.21ID:+Ahw3+Yh0 当たり前だけど座標決め打ち配置なんて滅多に行わないのが普通
そういう場合はTableLayoutPanelを利用するのが一般的じゃないかな
RowとColumn指定で表みたいに配置できるタイプのコンテナ
つまりその場合はColumnCountを2にして左側に置きたいものをColumn=0、右に置きたいものをColumn=1とすればいい
Dockとかで左右分けるのも無しではないが、そうするとコントロールの長さによっては被りが発生する
そういう場合はTableLayoutPanelを利用するのが一般的じゃないかな
RowとColumn指定で表みたいに配置できるタイプのコンテナ
つまりその場合はColumnCountを2にして左側に置きたいものをColumn=0、右に置きたいものをColumn=1とすればいい
Dockとかで左右分けるのも無しではないが、そうするとコントロールの長さによっては被りが発生する
514デフォルトの名無しさん (ワッチョイ 2b54-zuU1)
2021/04/13(火) 20:07:40.16ID:eLi1/5j/0515デフォルトの名無しさん (ワッチョイ e26a-CoCA)
2021/04/13(火) 22:47:36.55ID:md9suVqV0 うへ、絶対座標使わないんか
そんなことするんだったらWPF使うなあ
そんなことするんだったらWPF使うなあ
516デフォルトの名無しさん (JP 0H9e-8MNu)
2021/04/14(水) 08:38:52.66ID:BYzg6/VGH Formで*LayoutやPaddingでレイアウトしてくの、VisualStudioのデザイナで保存した瞬間に座標決め打ちされるのがね……
個人開発なら問題ないけど個人開発なら素直にWPFなり使えば良いし
複数人での開発だと1人でもデザイナでレイアウトしたい人がいるとその人が保存したら決め打ち座標が設定される
個人開発なら問題ないけど個人開発なら素直にWPFなり使えば良いし
複数人での開発だと1人でもデザイナでレイアウトしたい人がいるとその人が保存したら決め打ち座標が設定される
517デフォルトの名無しさん (ワッチョイ 6736-vIdd)
2021/04/14(水) 21:07:41.97ID:XIQVx6mo0 Qtもあるんだが。
518デフォルトの名無しさん (ワッチョイ 376e-Ho7r)
2021/04/17(土) 15:48:49.32ID:knKDzqXi0 独学で小さな会社の社内用にちまちまやっているのですが
フォームの数やクラスファイルが次第にでかくなり
VisualStudioが重く感じたり、デバック立ち上げるときのもっさり感が気になります
いくらかDLL化するとVisualStudioでデバックするときの処理の軽さや
Setupファイルのビルドの速さなんかに影響したりしますか?
個人レベル(単独で)で開発してる限りでDLLにするメリットってありますか?
フォームの数やクラスファイルが次第にでかくなり
VisualStudioが重く感じたり、デバック立ち上げるときのもっさり感が気になります
いくらかDLL化するとVisualStudioでデバックするときの処理の軽さや
Setupファイルのビルドの速さなんかに影響したりしますか?
個人レベル(単独で)で開発してる限りでDLLにするメリットってありますか?
519デフォルトの名無しさん (ワッチョイ 3778-tdH6)
2021/04/17(土) 16:42:28.81ID:gq87BRHm0 ソリューションやプロジェクトを分割すればVisualStudio自身の負荷は軽減されるとは思う
520デフォルトの名無しさん (ワッチョイ 5787-r97/)
2021/04/17(土) 16:44:33.12ID:02JVKjXw0 >>518
ビルドはプロジェクト単位で走るから、早くなると思うよ。
各プロジェクトのソースコードをまとめていじって、まとめてビルドしたら時間は変わらないけど。
※同一ソリューション内にあって、ソリューションごとビルドしても変わらないけど。
dllに分ける必要があるかは個人レベルとか関係ないからやってみたら?
そんで色々考えるのがいいと思うし、楽しいよ。
ビルドはプロジェクト単位で走るから、早くなると思うよ。
各プロジェクトのソースコードをまとめていじって、まとめてビルドしたら時間は変わらないけど。
※同一ソリューション内にあって、ソリューションごとビルドしても変わらないけど。
dllに分ける必要があるかは個人レベルとか関係ないからやってみたら?
そんで色々考えるのがいいと思うし、楽しいよ。
521デフォルトの名無しさん (アウアウウー Sa1b-B9Cj)
2021/04/17(土) 16:58:25.17ID:3+8Yd0vAa >>518
そもそもプロジェクトの規模に比例してVSが重くなったりしないと思うよ。
少なくとも「ちまちまやってる」程度なら絶対にありえないと断言できる。
重くなってる理由は他にあるんじゃないのかな
必要性もないのにアセンブリを分ける(dllにする)ことには反対。
そもそもプロジェクトの規模に比例してVSが重くなったりしないと思うよ。
少なくとも「ちまちまやってる」程度なら絶対にありえないと断言できる。
重くなってる理由は他にあるんじゃないのかな
必要性もないのにアセンブリを分ける(dllにする)ことには反対。
522デフォルトの名無しさん (ワッチョイ 376e-Ho7r)
2021/04/17(土) 17:43:26.21ID:knKDzqXi0 皆さんレスありがとうございます
ソリューション内にプロジェクト分けてそれぞれ書き出したDLLをメインのプロジェクトで
読み込ませて使う・・・メインのビルド(動作テストなど)は軽くなるという理解であってますか?
修正があれば、そのプロジェクトだけビルドし直す、
最終的な製品にするインストーラー生成時はかわらないと
>>521
かれこれ2年近く機能拡張続けていて、Form画面だけで300くらいで
それとほぼ同数のサードパーティ製の表形式コントロールやら帳票やらもある感じです
vsフォルダ作り直したり、VisualStudioの軽量化はいろいろ試して
多少は軽くなってますが、ファイル数が多ければビルドに時間がかかるし
InteliSenseやエラーの出力など、プロジェクト内のファイル数が多ければ多いほど
そのための処理が入るのかなと思ったのですが違うんでしょうか
何分素人レベルなので、デバック→エラー→修正→デバック→の繰り返しでなんとかやってるので
ビルドの速さが結構切実だったりします
ソリューション内にプロジェクト分けてそれぞれ書き出したDLLをメインのプロジェクトで
読み込ませて使う・・・メインのビルド(動作テストなど)は軽くなるという理解であってますか?
修正があれば、そのプロジェクトだけビルドし直す、
最終的な製品にするインストーラー生成時はかわらないと
>>521
かれこれ2年近く機能拡張続けていて、Form画面だけで300くらいで
それとほぼ同数のサードパーティ製の表形式コントロールやら帳票やらもある感じです
vsフォルダ作り直したり、VisualStudioの軽量化はいろいろ試して
多少は軽くなってますが、ファイル数が多ければビルドに時間がかかるし
InteliSenseやエラーの出力など、プロジェクト内のファイル数が多ければ多いほど
そのための処理が入るのかなと思ったのですが違うんでしょうか
何分素人レベルなので、デバック→エラー→修正→デバック→の繰り返しでなんとかやってるので
ビルドの速さが結構切実だったりします
523デフォルトの名無しさん (ワッチョイ 3778-tdH6)
2021/04/17(土) 18:00:16.57ID:gq87BRHm0 そりゃ必要ないソースもビルドされるから遅くなるわな
まずは処理単位でプロジェクトを分割することオススメするよ
まずは処理単位でプロジェクトを分割することオススメするよ
524デフォルトの名無しさん (ワッチョイ 9f6a-tdH6)
2021/04/18(日) 00:26:44.62ID:KruIYoV70 こうやって情報を後出しすると話がなかなか進まないのです
525デフォルトの名無しさん (ワッチョイ bf62-rOyz)
2021/04/18(日) 12:09:57.65ID:v8qpskqd0 普通にソース書いてデバックするだけのプロジェクトなら差分ビルドでそんなに時間がかかるイメージないけどな
別の要因が色々出てきそうだけど、まあ分割して解決したらいいね
別の要因が色々出てきそうだけど、まあ分割して解決したらいいね
526デフォルトの名無しさん (ワッチョイ 9f84-Ho7r)
2021/04/18(日) 13:43:19.23ID:jmo1IQPt0 makefileとかだと依存関係が正しくなくて差分ビルドのつもりでも全ソース
フルビルドになっていたとかあるけど
あと、サードパーティーのコントロールとかって話なので、パッケージが
なんでも無条件にフルビルドするので、自分の修正とは関係ないところで
ガンガンビルドがはしっているとか
フルビルドになっていたとかあるけど
あと、サードパーティーのコントロールとかって話なので、パッケージが
なんでも無条件にフルビルドするので、自分の修正とは関係ないところで
ガンガンビルドがはしっているとか
527デフォルトの名無しさん (アウアウウー Sa1b-Qn2Y)
2021/04/19(月) 08:49:19.92ID:SmagIxBsa デバックってなんだよデバグだろw
528デフォルトの名無しさん (ワッチョイ 3702-tdH6)
2021/04/20(火) 08:44:29.47ID:eIvQPkWn0 DEBUG
DEBUGGER
DEBUGGER
529デフォルトの名無しさん (ワッチョイ 97b5-Ct9k)
2021/04/20(火) 16:04:11.65ID:92CAyifa0 BUGGER = 肛門性交する奴
530デフォルトの名無しさん (アウアウウー Sa1b-Qn2Y)
2021/04/21(水) 20:50:02.04ID:qBUFmeXia enbug 修正などよって新たなバグを作り込む
531デフォルトの名無しさん (アウアウクー MMd2-n2ja)
2021/04/23(金) 13:10:42.79ID:gxfm9rdtM VisualStudio2019のクエリビルダー使ってFillを生成してるんですが、
クエリビルダーの「クエリの実行」ではパラメータに「%」使って目的のデータを取得出来るのに
生成したFillの「データのプレビュー」でパラメータに「%」使うと何もヒットしないという現象が起きてて途方に暮れてます
ちなみにアンダースコアは任意の1文字で検索してくれるので初心者女子高生の私には
もう原因さっぱり判りませんの(´・ω・`)
クエリビルダーの「クエリの実行」ではパラメータに「%」使って目的のデータを取得出来るのに
生成したFillの「データのプレビュー」でパラメータに「%」使うと何もヒットしないという現象が起きてて途方に暮れてます
ちなみにアンダースコアは任意の1文字で検索してくれるので初心者女子高生の私には
もう原因さっぱり判りませんの(´・ω・`)
532デフォルトの名無しさん (ラクッペペ MM34-Edqn)
2021/04/23(金) 13:16:05.78ID:CEwDMyU+M Fillを生成?
533デフォルトの名無しさん (アウアウクー MMd2-n2ja)
2021/04/23(金) 13:36:44.61ID:gxfm9rdtM >>532
作成かな。メンゴメンゴ
作成かな。メンゴメンゴ
534デフォルトの名無しさん (ワッチョイ 8e2c-MVqC)
2021/04/23(金) 14:56:28.43ID:vlx7cXWJ0 RDBMSのクエリログで内容確認すれば
535デフォルトの名無しさん (ワッチョイ 8768-xm3u)
2021/05/03(月) 23:04:24.90ID:XKJBqUJn0 自力で簡易なセキュリティソフトを作りたいと思っています。
動きは単純で、登録されていない実行ファイルが勝手に外部に通信しようとしたらブロックするだけのものです。
AVASTがやってる動きです。
何らかのAPIをフックするのだろうという事は想像できますが、取っ掛かりが分かりません。
どのAPIを見れば良いのかご存じの方いらっしゃいますでしょうか?
動きは単純で、登録されていない実行ファイルが勝手に外部に通信しようとしたらブロックするだけのものです。
AVASTがやってる動きです。
何らかのAPIをフックするのだろうという事は想像できますが、取っ掛かりが分かりません。
どのAPIを見れば良いのかご存じの方いらっしゃいますでしょうか?
536デフォルトの名無しさん (ワントンキン MM4f-tZna)
2021/05/04(火) 10:07:10.31ID:N+ZQj8AqM npcap使うのが定番かな今は
537デフォルトの名無しさん (ワッチョイ 7f63-3Eyb)
2021/05/04(火) 10:36:28.73ID:x7uRD8HC0 Windowsの話だったらWindows Filtering Platformとか
538デフォルトの名無しさん (アウアウクー MM73-XxK1)
2021/05/13(木) 18:58:32.33ID:I198/5nSM wpf でtabcontroleで複数タブにrediobutton配置支店ですけど
これを全部一つのグループにすることってできないんですかね?
groupname指定しても駄目だったので仕様的に方法なしなんでしょうか……(´・ω・`)
これを全部一つのグループにすることってできないんですかね?
groupname指定しても駄目だったので仕様的に方法なしなんでしょうか……(´・ω・`)
539デフォルトの名無しさん (ワッチョイ be2c-5KFm)
2021/05/13(木) 20:02:28.36ID:a3yRiKHd0 GroupNameでは無理
IsCheckedへのバインディングとかでうまいことやって
IsCheckedへのバインディングとかでうまいことやって
540デフォルトの名無しさん (ワッチョイ fb24-jjtP)
2021/05/13(木) 23:35:30.68ID:MnuHueii0 >>535
明らかにC#の範囲外の質問でOSハックレベルの話だが、例えばWindowsならカーネルドライバを利用した通信フックライブラリはいくつかあったはず
んでTCPやUDPのソースポートから発信元プロセスは特定できるからそれくらいならすぐ作れるだろうけど
想像以上に多くのシステムプロセスが通信してるから登録するのめんどそうだけどな
明らかにC#の範囲外の質問でOSハックレベルの話だが、例えばWindowsならカーネルドライバを利用した通信フックライブラリはいくつかあったはず
んでTCPやUDPのソースポートから発信元プロセスは特定できるからそれくらいならすぐ作れるだろうけど
想像以上に多くのシステムプロセスが通信してるから登録するのめんどそうだけどな
541デフォルトの名無しさん (アウアウクー MM23-Ji+2)
2021/05/14(金) 19:19:35.19ID:hD9Eg79MM >>539
バインディングなんてわかるわけ無いだろ!(`;ω;´)
もう仕方ないからボタンと背景色でタブっぽい見た目作ってラジオボタンをVisibleったりhiddenったりしてそれっぽいの作った……
バインディングなんてわかるわけ無いだろ!(`;ω;´)
もう仕方ないからボタンと背景色でタブっぽい見た目作ってラジオボタンをVisibleったりhiddenったりしてそれっぽいの作った……
542デフォルトの名無しさん (ワッチョイ 3344-Adon)
2021/05/16(日) 04:48:26.69ID:CGr30bxH0 functorに関する質問です
C++で次のように書いとけば
template<typename Functor>
double Example( Functor func,・・・){
呼出し時に、引数funcに関数へのポインタでも、ラムダ式でも、関数名でも記述できますが、
C#で同じように、引数に、デリゲートでもラムダ式でも関数名でも記述可能にするにはどーすればいいのでしょうか?
C++で次のように書いとけば
template<typename Functor>
double Example( Functor func,・・・){
呼出し時に、引数funcに関数へのポインタでも、ラムダ式でも、関数名でも記述できますが、
C#で同じように、引数に、デリゲートでもラムダ式でも関数名でも記述可能にするにはどーすればいいのでしょうか?
543デフォルトの名無しさん (ワッチョイ ab2c-mHP1)
2021/05/16(日) 08:50:12.74ID:8qTwOc620 > 引数に、デリゲートでもラムダ式でも関数名でも記述可能にするには
デリゲート型を指定すればいい
double Example<T>(Func<T, double> func, T obj) { ... }
double ToDouble(Hoge hoge) { return hoge.Value; }
this.Example(obj => obj.Value, hoge);
this.Example(ToDouble, hoge);
this.Example(new Func<Hoge, double>(ToDouble), hoge);
ただしシグネチャが同じでもデリゲート型が違うと無理なのでラムダ式なりとおす必要がある
delegate TRet Converter<TArg, TRet>(TArg arg);
var conv = new Converter<Hoge, double>(obj => obj.Value);
this.Example(conv, hoge); // エラー
this.Example(obj => conv(obj), hoge); // OK
デリゲート型を指定すればいい
double Example<T>(Func<T, double> func, T obj) { ... }
double ToDouble(Hoge hoge) { return hoge.Value; }
this.Example(obj => obj.Value, hoge);
this.Example(ToDouble, hoge);
this.Example(new Func<Hoge, double>(ToDouble), hoge);
ただしシグネチャが同じでもデリゲート型が違うと無理なのでラムダ式なりとおす必要がある
delegate TRet Converter<TArg, TRet>(TArg arg);
var conv = new Converter<Hoge, double>(obj => obj.Value);
this.Example(conv, hoge); // エラー
this.Example(obj => conv(obj), hoge); // OK
544デフォルトの名無しさん (ワッチョイ e1da-jjUc)
2021/05/18(火) 04:46:17.76ID:MJ7hOma30 System.Collections.Generic.List<System.String> hips =
new System.Collections.Generic.List<System.String>(0);
hips.Add(@"尻");
hips.Add(@"ケツ");
hips.Add(@"Buttocks");
hips.Add(@"んまら");
hips.Add(@"臀");
hips.Add(@"ω");
hips.Add(@"Hip");
foreach (System.String hip in hips) {
System.Console.WriteLine(hip);
}
new System.Collections.Generic.List<System.String>(0);
hips.Add(@"尻");
hips.Add(@"ケツ");
hips.Add(@"Buttocks");
hips.Add(@"んまら");
hips.Add(@"臀");
hips.Add(@"ω");
hips.Add(@"Hip");
foreach (System.String hip in hips) {
System.Console.WriteLine(hip);
}
545デフォルトの名無しさん (ワッチョイ fa07-Mbt4)
2021/05/22(土) 21:17:48.56ID:ylKhWhlM0 俺のツレの先輩がc#プログラマに酷い目に遭わされたことがある
c#プログラマから金借りて返さんかったら、拉致られて拷問うけた
指の爪全部ペンチで剥がされてその後ペンチで指先を挟んで潰されたらしい
4本目くらいで痛みに耐え切れなくて舌噛み切って死のうとしたけど死ねなかったって
命までは取られなかったけど指先全部駄目になって切断したみたい
c#プログラマから金借りて返さんかったら、拉致られて拷問うけた
指の爪全部ペンチで剥がされてその後ペンチで指先を挟んで潰されたらしい
4本目くらいで痛みに耐え切れなくて舌噛み切って死のうとしたけど死ねなかったって
命までは取られなかったけど指先全部駄目になって切断したみたい
546デフォルトの名無しさん (ワッチョイ 4ef2-+Pd7)
2021/05/23(日) 08:27:53.86ID:ANX6JUnX0 改変コピペ?
547デフォルトの名無しさん (ワッチョイ 4e63-6qZI)
2021/05/23(日) 13:27:11.50ID:d15ZAA8n0 そうじゃなかったら知的障害かな
548デフォルトの名無しさん (ワッチョイ 796e-PRuz)
2021/06/05(土) 14:12:36.14ID:Zn+ZYGmH0 メモリ不足での相談です
小さいjpg画像ファイル(1ファイル50KB程度)を10,000ファイル程度
サードパーティ製のGridViewに投げ込んで表示させようとしてます
その前にList<Image>に下のような感じでStreamで投げ込んでいくのですが
var fs = System.IO.File.OpenRead(@filepath);
ListData = new Bitmap(Image.FromStream(fs, false, false));
fs.Dispose();
4000ファイルあたりでメモリ不足に陥ります
VSの診断ツールで見ていると、読み出しはじめて4GBで止まります
メモリが4Gでアウトになっているのは理解できるのですが
ローカル上のファイルの総データ量は800MB程度で、実際に読み込みがとまるあたりでは
せいぜい200MB程度読み込んだ程度と思います
2000ファイル程度にグループごとに都度分けて読み込ますしかないかなと思っていますが
確認すべき点(余計に容量食っている要因)やなにか他に方法があったらご教授ください
小さいjpg画像ファイル(1ファイル50KB程度)を10,000ファイル程度
サードパーティ製のGridViewに投げ込んで表示させようとしてます
その前にList<Image>に下のような感じでStreamで投げ込んでいくのですが
var fs = System.IO.File.OpenRead(@filepath);
ListData = new Bitmap(Image.FromStream(fs, false, false));
fs.Dispose();
4000ファイルあたりでメモリ不足に陥ります
VSの診断ツールで見ていると、読み出しはじめて4GBで止まります
メモリが4Gでアウトになっているのは理解できるのですが
ローカル上のファイルの総データ量は800MB程度で、実際に読み込みがとまるあたりでは
せいぜい200MB程度読み込んだ程度と思います
2000ファイル程度にグループごとに都度分けて読み込ますしかないかなと思っていますが
確認すべき点(余計に容量食っている要因)やなにか他に方法があったらご教授ください
549デフォルトの名無しさん (ワッチョイ 4d2d-Fu2c)
2021/06/05(土) 14:18:34.48ID:dB/oWOjW0 >>548
JpegをBitmapに展開してるのだから容量が増えるのは当然では
JpegをBitmapに展開してるのだから容量が増えるのは当然では
550デフォルトの名無しさん (ワッチョイ 796e-PRuz)
2021/06/05(土) 15:00:04.47ID:Zn+ZYGmH0551デフォルトの名無しさん (ワッチョイ ca6a-PRuz)
2021/06/05(土) 15:05:40.03ID:byK7y7eQ0552デフォルトの名無しさん (ワッチョイ 5573-EGuX)
2021/06/05(土) 17:36:11.90ID:L7L31nHe0 32bit優先が付いてるとか?
ただどっちみちアプリ全体どころか、1つのリストで4Gもメモリに保持とかは筋がめっちゃ悪いぞ。
4000ものフル画像が同時に必要とかあり得ないし。
表示上必要ならメモリ上にもつならすごく小さなサムネイルをダイナミックに並列処理で作りながら持つとか。
今表示に必要なものだけ、ダイナミックにメモリで並列処理でサムネ作るとかでしょ。
ただどっちみちアプリ全体どころか、1つのリストで4Gもメモリに保持とかは筋がめっちゃ悪いぞ。
4000ものフル画像が同時に必要とかあり得ないし。
表示上必要ならメモリ上にもつならすごく小さなサムネイルをダイナミックに並列処理で作りながら持つとか。
今表示に必要なものだけ、ダイナミックにメモリで並列処理でサムネ作るとかでしょ。
553デフォルトの名無しさん (ワッチョイ 55ad-wkOw)
2021/06/05(土) 18:00:28.83ID:Oyn+hOcj0 今時VirtualMode的なものが無いグリッドコントロールなんてあるのか?
554デフォルトの名無しさん (ワッチョイ 796e-PRuz)
2021/06/05(土) 19:41:37.20ID:Zn+ZYGmH0 >>552
やっぱり、そうですよね
実際には10000ファイル越える予定だったのでなおさらですよね
スクロール時のスピード感は多少落ちますが
素直にグリッドコントロールが描画する際に都度読み込むようにすることにします
やっぱり、そうですよね
実際には10000ファイル越える予定だったのでなおさらですよね
スクロール時のスピード感は多少落ちますが
素直にグリッドコントロールが描画する際に都度読み込むようにすることにします
555デフォルトの名無しさん (ワッチョイ 55e4-uikQ)
2021/06/06(日) 18:25:06.49ID:qxB2AhqX0 >>554
良い悪いは置いておいて、とりあえずファイル郡をまとめて読み込んでおくのが
目的で、Bitmapで変換するとメモリを消費してしまうのならば、ファイルの内容を
Streamの配列に読み込んでおいて、表示するときにBitmapで変換するとか
そして表示するだけならばBitmap使わなくてもImageでStreamから読んで
DrawImageでよいんじゃないかなとか
良い悪いは置いておいて、とりあえずファイル郡をまとめて読み込んでおくのが
目的で、Bitmapで変換するとメモリを消費してしまうのならば、ファイルの内容を
Streamの配列に読み込んでおいて、表示するときにBitmapで変換するとか
そして表示するだけならばBitmap使わなくてもImageでStreamから読んで
DrawImageでよいんじゃないかなとか
556デフォルトの名無しさん (ワッチョイ 55ad-wkOw)
2021/06/06(日) 18:34:20.40ID:SkRnwEhy0 無駄
557デフォルトの名無しさん (ワッチョイ ca79-62sI)
2021/06/08(火) 10:18:44.68ID:f9CCCXBt0 要するにサムネ表示したいんだろ
SSDなら1万ファイルの読み込みにもそんな時間掛からんし
ファイルをインデクス化して画面に出る部分だけ都度読み込んで描画すればいい
グリッドビューなんて必要かね
SSDなら1万ファイルの読み込みにもそんな時間掛からんし
ファイルをインデクス化して画面に出る部分だけ都度読み込んで描画すればいい
グリッドビューなんて必要かね
558デフォルトの名無しさん (ワッチョイ 2d24-p9zx)
2021/06/10(木) 16:49:33.11ID:r3+xqCr00 仮想化すればいいだけの話じゃん
何兆個のファイルがあろうとどうせ表示される項目は多くても数十なんだからスクロール位置などから表示すべきファイルだけサムネ表示すればいい
何兆個のファイルがあろうとどうせ表示される項目は多くても数十なんだからスクロール位置などから表示すべきファイルだけサムネ表示すればいい
559デフォルトの名無しさん (ワッチョイ 2324-nisE)
2021/06/11(金) 13:38:09.74ID:SXyLlFHz0 日本語の変数名使えるのに記号の変数名はダメなのかよ
競馬関係のアプリ開発受注したから予想記号の変数名として分かりやすく記号使いたいのに
競馬関係のアプリ開発受注したから予想記号の変数名として分かりやすく記号使いたいのに
560デフォルトの名無しさん (ワッチョイ 6393-jy7w)
2021/06/11(金) 17:10:30.00ID:Ugg65Q0l0 記号で分かりやすくとか頭おかしいんじゃないの?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【外交】元台湾総統・馬英九氏、高市首相発言に「台湾を危険にさらす」台湾海峡の問題は「両岸の中国人が自ら話し合うべき」★2 [1ゲットロボ★]
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★8 [ぐれ★]
- 「母の部屋に安倍氏が表紙の機関誌が」「(安倍氏が被害者なのは)不思議に思いませんでした」山上被告の妹が証言 [おっさん友の会★]
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★5 [BFU★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 [ぐれ★]
- (´ん`)「公明党、お前だったのか。自民党から国民を守ってくれていたのは...」 [603416639]
- 【高市売り】円安、止まらず!凄い勢いで暴落中。157円へ [219241683]
- 維新代表吉村、壊れたレコードになる「中国はカントリーリスク、中国人観光客がいなくても成り立つビジネスを目指せ」を何度も繰り返す [856698234]
- 【悲報】ヤフコメ民「中国が水産物を輸入禁止にするなら、日本国民向けに安く販売すればいい。中国依存から脱するべき」 [153736977]
- 1,000万円のBMWに擦ってしまった札幌のガキ、捕らえられてガチで詰む [329329848]
- 死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね
