procedure TForm1.Button1Click(Sender: TObject);
begin
flag := Random(15);
ShowMsg(Format('%d-%d', [count,flag]));
Inc(count);
end;
こういうことじゃないのか?
>格納して出し入れしたい
エロス
955 :
950:2005/12/28(水) 12:55:44
CheckBox1.Checked := True って値を入れると
CheckBox1のOnClickイベントが発生しちゃいますよね
OnClickイベントを通らずに、CheckBox1.Checkedの値を変更したいんですけど、
何か良い方法があればご教授おねがいします
CheckBox1がForm1に貼り付けられているとして、
メンバー変数にブーリアン値を用意する。
で、それを起動時にfalseにでも初期化して、
CheckBox1のChecked値を変える直前にそのブーリアンをtrueにして、
変更したらブーリアンをfalseに戻す。
OnClickイベント内では、最初に、ブーリアンをチェックして、trueならexitする。
>956
begin
CheckBox1.OnClick := nil;
CheckBox1.Checked := True;
CheckBox1.OnClick := CheckBox1Click;
>>957-958 ありがとうございました。うまく動きました。
958さんの方法をお借りしました。
957さんの方法のほうが分かりやすいんですけど、あまり変数は増やしたくなかったんで。
でもいろんなものに応用は利きそうですね。
脳みそにしわが1本増えました。どうもです。
963 :
デフォルトの名無しさん:2005/12/28(水) 17:48:02
イラネ
もうどうでもいいです、はい
DelWikiのところは
>>833に差し替えかな?
>>966はイラネ、必要なときはいつでもVSのスレに見に行きゃいいし
966に反応するな
俺はたるんだ某へのプレッシャーになるから
>>966はあったほうがいいな。
いや、かならず入れるべきだよ。
970 :
毛の生えたフサギコ:2005/12/28(水) 20:48:32
>>960 すみません。入力ミスで、その1からず〜っと気にしていたことですが・・・。
>何が何だが(×)
>何が何だか(○)です。
訂正をおねがいします。
ところでInternet Archive から本家 DelWikiってみられない気がするんだが。
ポート番号付けたら見られるよ。
同じxreaというか無料鯖にwiki作っても旧wikiと同じ末路を辿るとしか思えないんだが。
というわけで有料鯖か自鯖でよろしく。
wikiってログイン必須に出来ないの?
>>975 何もできない猿がよく言うよ┐(;´〜`)┌
MediaWikiなら編集者の履歴が残るが…マァ折角置いてくれたんだし、どうこう言うこともなかろう
問題は、Wikiは情報を溜める場所であって議論のための議論は他所でやれ、ってのがどこまで徹底できるか、かな
すきにやればいいじゃないの。やなら見なけりゃいいんだし。
ライブドアのwikiならログイン必須
乙。BDNも追加して欲しぃ
駅で階段見上げたら女子中学生がいてさ、スカートの中見ちゃったんだよ。
そんでその女子中学生にいきなり振り向かれて
「せ、責任とってお嫁に貰ってください・・・」
って言われちゃったんだ。
俺は慌てちゃってさ
「・・え?は、はぁ・・・」
みたいに返してそのまま通り過ぎようとしたら
俺のシャツをチョコンと指で掴んでずっとついてくるのね。
そんでとうとう家までついて来ちゃってさ
「はじめてですけど覚悟は出来てます・・・」
とか言うわけよ。
俺もう理性が吹っ飛んじゃって
(全てを読むにはワッフルワッフルと書き込んでください)
ワッフルワッフル
すいません、THashedStringListの使用方法について教えてください。
やりたいことは「キー」と「値」をハッシュで管理したいのですが、使用方法が分かりません。
データを追加するときはAdd('キー=値')で登録するとして、データを取り出すときはどうするのでしょうか。
IndexOfName(キー)でインデックスは取得できるようですが、値は自分で分解するのでしょうか?
もっとスマートなやりかたが有りそうな気がするのですがヘルプを見ても分からないし・・・
よろしくお願いします。
LoadFromFileじゃダメだった?
今年も残り少ないのですが質問です。動的配列にExtended型のデータを入れて
いるのですが、これをファイルに保存したり読み出したりする方法をご存知の
方がいましたらご教授お願いします。(Delphi7Pro,WindowsXPです)
>>983 TMemIniFile.ReadStringのソース見ると
Copy(Strings[Strings.IndexOfName(キー)], Length(キー) + 2, Maxint);
って感じで取ってるからそーゆーことなんじゃ?
つーかTHashedStringListの代わりにTMemIniFile使った方が扱いは楽かもよ
>>985 やり方は山ほどある。
俺なら、TFileStreamを使って、
配列の中身を一個ずつ
filestream.write( ex , sizeof(ex) ) ; // ex : extended ;
とかするかな。
>>983 i := hoge.IndexOfName('キー');
Value := hoge.Values[hoge.Names[i]];
989 :
988:2005/12/29(木) 17:04:10
ごめ、IndexOfNameに気を取られすぎてた('A`)
Values['キー']で充分だな
ワッフル!
991 :
983:2005/12/29(木) 17:49:07
>>984 プログラムの中でしこしこしたかったもので。
>>986 TMemIniFileなんてあるのですか。なんでIniFilesユニットなのかと不思議でした。
>>988,989
あ、なるほど。この様に使うのですか。
皆さん、有難うございました。やっと使えそうです。
>>987 ありがとうございます。TFileStream で検討したいと思います。
ただ、配列の要素数が数万件あるのです。試してみるつもりですが、
他の方法もご存知でしたら教えていただけますでしょうか。
1要素のサイズが分かっていて、個数も分かってるんだから一行で TFileStream に書き込めるでしょ。
そういやそうだな
>>993 あ、そうなんですけど、性能が心配だったもので…
でも試してみたところ、1件の動的配列の読み書きはほとんど一瞬で終わりました。
ですが実は数万件の配列要素を複数(ユーザー次第)同時にI/Oする処理が追加に
なる予定ですので、(ブロッキングみたいな?)他の方法を聞いた次第なのです。
と、ここまで書いてきて、TMemoryStream に書いといてから Write する、みたい
な方法も思いついたのでちょっと試したいと思います。
>>995 数が固定されてるならファイルマッピングとか
>>995 Delphiでファイル書き込みってのはさ、基本的に4つなのよ。
1 ファイル変数を使う
2 TStreamの派生クラスを使う
3 その他のクラスを使う
4 Windows APIを使う
3の場合ってのは、今回なら例えば、一項目を一行のテキストデータにしておいて、
TStringListで書き込むとかいう場合ね。
>>996 >>997 色々と情報、ありがとうです。要素数は固定されてないのです。
ファイルのI/Oもいろいろな方法がありますですね。小出しにしてすみませんが
将来は他のバイナリデータやテキストデータもいっしょくたにひとつのファイルに
書かなくてはならないので(さっき思い出しました)、TStream を使って進めて
行きたいと思います。
次スレは?
1000 :
デフォルトの名無しさん:2005/12/29(木) 21:17:52
ワッフルワッフル!
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。