1 名前: ◆XcB18Bks.Y mailto:sage [2008/03/12(水) 21:09:39 ] Delphi(デルファイ)について、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を 勇気を持って書き込むスレッドです。 Delphi使いが優しくコメントを返しますが お礼はDelphiの布教と初心者の救済をお願いします。 <前スレ> くだすれDelphi(超初心者用)その45 pc11.2ch.net/test/read.cgi/tech/1198802907/ <過去スレ> DelWiki避難所(Delphi 関連の過去スレッド) delwiki.info/?Delphi%20%B4%D8%CF%A2%A4%CE%B2%E1%B5%EE%A5%B9%A5%EC%A5%C3%A5%C9
684 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 12:13:48 ] >>682 var hoge:integer; begin if listview1.itemindex<0 then exit; hoge:=listview1.ItemIndex+1; listview1.ClearSelection; listview1.Items[hoge].Selected:=true; listview1.Items[hoge].focused:=true; listview1.SetFocus; end; こういう事? MakeVisibleや行数を超える場合は知らない
685 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 14:06:00 ] >>682 <<1でTListItem.SelectedをFalseにしているのだから <<2のTListView.Selectedはnilになってる
686 名前:682 mailto:sage [2008/05/17(土) 14:58:57 ] >>683 >>684 >>685 あ!なるほど こんな感じで実装したら思ったようにいきました。 ありがとうございます!助かりました。 procedure TMainForm.ListMove(Next: Boolean); var i, idx: Integer; begin if Next then i := 1 else i := -1; with ListView do begin idx := Selected.Index; ClearSelection; Items[idx].Selected := False; Items[idx + i].Selected := True; Items[idx + i].Focused := True; end; end;
687 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 15:16:38 ] マルチセレクトでないなら ListView.ItemIndex := ListView.ItemIndex + 1 でいいんじゃない?
688 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 17:56:34 ] 指定した文字列がファイルとして作成できるか確認する方法はありますか? 例えばC:\Delphi.txtを渡すとTrue、C:\Delphi\を渡すとFalseを返す、などということです
689 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:06:56 ] ListViewについて質問です。 二つのカラムを作成し(A、B)、カラムAの1番目に文字列'1-1'、カラムBの1番目に文字列'1-2'、 カラムAの2番目に文字列'2-1'、カラムBの2番目に文字列'2-2'という形でリストを作成したいのですがどうすればいいでしょうか? よろしくお願いします。
690 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:17:14 ] >>688 ヘルプでFileCreate検索しろ >>689 ListViewの扱い方をまず学べ
691 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:21:32 BE:261735-PLT(12660)] >>689 var TestColumn: TListColumn; begin with ListView1 do begin TestColumn := Columns.Add; TestColumn.Caption := 'A'; TestColumn.Width := 100; TestColumn := Columns.Add; TestColumn.Caption := 'B'; TestColumn.Width := 100; with Items.Add() do begin Caption := '1-1'; SubItems.Add('2-1') end; with Items.Add() do begin Caption := '1-2'; SubItems.Add('2-2') end; end; end;
692 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:24:22 ] >>688 字面の正しさは正規表現でチェック '^([a-zA-Z]\:)|(\\)(\\{1}|((\\{1})[^\\]([^/:*?<>"|]*(?<!\[\])))+)$' ディレクトリが存在してるか、アクセス権があるか等々で失敗する要因が他にもあるから あまりがんばらずに、実際に書き込んでみてから例外拾って対応するのが定石。 >>689 for i := 1 to 2 do with ListView1.Items.Add do begin Caption := Format('%d-1', [i]); SubItems.Add(Format('%d-2', [i]); end;
693 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:30:13 ] >>690 ,692 FileCreateで行けるようですね、ありがとうございました
694 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:39:52 ] >>690 色々なサイトを回ったのですがSubItemの使い方について書いてあるところが見つかりませんでした。 >>691-692 ありがとうございます。 しかし、そのとおり実行してみるとカラムAの1番目に'1-1'、3番目に'2-1' カラムBの2番目に'1-2'、4番目に'2-2'と表示され、 カラムAの2,4番目は空欄、カラムBの1,3番目も空欄、というようになります。 どうすれば1番目と2番目とで納められるでしょうか?
695 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:48:41 ] 本当にすみません。 >>692 さんのコードでできました。お騒がせいたしました。 また、答えてくださった方ありがとうございました。
696 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:56:07 ] >>691 さんのコードもできました。 変に打ち間違えていたようです。 すみませんでした。
697 名前:デフォルトの名無しさん [2008/05/20(火) 06:08:00 ] >>696 うるせ馬鹿 死んで詫びろ
698 名前:デフォルトの名無しさん [2008/05/20(火) 06:10:06 ] >>690 お前も死ね
699 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 17:44:20 ] ActionListをダブルクリックすると編集ウィンドウが開きますが、 この位置や大きさをプロジェクト単位で覚えさせとくってできます?
700 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 00:32:41 ] 知らぬ間にPngDelphi氏んでたのね www.codeplex.com/PNGImage
701 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 07:14:42 ] >>699 フリーウェアでそんなのがありそうだな。 ソフトウェア板行って聞いてみたら。
702 名前:デフォルトの名無しさん [2008/05/21(水) 11:04:56 ] Memo1.Lines.LoadFromFile(FileName); とかでEUCのテキストを読み込むと文字化けしますが これを読めるように表示することってできるのでしょうか? テキストエディタだと見た目はeucで読み込んで表示し 保存もeucのまましてるように見えるけどあれは 内部でシフトJISに変換して表示して、保存時は再度eucに変換してるだけなんでしょうか?
703 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 11:35:28 ] TMemoryStreamで読み込んで nkf32.dllで変換して Memo1.Lines.LoadFromStream
704 名前:k [2008/05/21(水) 11:52:01 ] 正整数Nを読み込み、x^2≦N<(x+1)^2となる整数x、つまり√Nの近似値を求めるプログラムを、 sqrtなどの標準関数を使わないで作りなさいという問題なんですが。。。 わかりません。教えてもらえませんか?PASCALでやっているんですが。
705 名前:702 mailto:sage [2008/05/21(水) 11:54:14 ] >>703 やはりnkf32.dll等で自動判別して読み込んでsjisで表示するんですね ありがとうございます
706 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 12:04:07 ] >>704 良く知られた方法は 奇数を順に累計していったらという方法 function iSqr(n:Integer):Integer; var i,sum:Integer; begin sum:=0; for i:=0 to $B505 div 2 do begin sum:=sum+1+i*2; if sum>n then begin Result:=i;exit;end; end; Result:=i; end; 大きな数字で速度がある程度必要ならバイナリー法(2分検索を行う) さらに浮動小数点等で速度が必要ならニュートン法
707 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 12:05:02 ] あ div 2 は 不要だ。
708 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 14:20:05 ] 助けてください。 Form3で procedure TForm3.FormCreate(Sender: TObject); begin IniFile := TIniFile.Create(ChangeFileExt(Application.ExeName, '.ini')); try pass := IniFile.Readinteger('pass', 'Pno',0); finally IniFile.Free; end; edit1.text:=inttostr(pass); end; んでForm1で procedure TForm1.N1Click(Sender: TObject); begin Form3.ShowModal; end; しても Form3のEdit1にiniのPnoデータ表示されません(;;
709 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 14:50:47 ] わざわざForm3のOnCreateを使ってiniを読む理由は?
710 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 14:54:04 ] >>708 何が表示されるの? もしかして Edit1 って文字のまま? だとしたら例外が出てるんじゃないの?
711 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 15:12:04 ] >>709 Form3(バージョン情報の画面)に シリアルb入力してiniファイルを作成してます。 んで次回起動時にForm3を開くと iniファイルを読んでシリアルb表示させたいんです。
712 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 15:15:40 ] >>710 シリアルbニして数値を表示させています。 一度入力すれば問題ないのですが 起動一発目の読み込みがうまくいきません(;;
713 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 15:16:52 ] コピペした部分のコードにはおかしいところはなさそうな気がする。 edit1.text:=inttostr(pass); の下に ShowMessage(Format('edit1.text=''%s'', pass=%d', [edit1.text, pass])); って行を入れてメッセージダイアログが表示され、更に値が望んだものかどうかをチェックしてみたら。
714 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 15:22:28 ] >>713 ダイアログ表示せず・・・ FormCreate走ってないようです orz
715 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 16:03:00 ] >>714 プロジェクトのオプションでForm3を自動作成の対象から外して Form1のボタンイベントを↓に変えて実行したらどうなる? procedure TForm1.N1Click(Sender: TObject); begin Form3 := TForm3.Create(nil); Form3.ShowModal; Form3.Free(); end;
716 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 16:53:00 ] メニューアイテムにビットマップを動的に割り付けようと 下記のようなコードを書いたのですが、反応がありません(エラーも出ない) New1.Bitmap.LoadFromFile('C:\hogehoge\new.bmp'); 設計時にオブジェクトインスペクタから、あらかじめ bitmapを割り当てていた場合は、 その画像と入れ替わりに、ビットマップが更新されます インスタンスがないのかと New1.Bitmap := TBitmap.Create; New1.Bitmap.LoadFromFile('C:\hogehoge\new.bmp'); もやってみましたが、結果は同じでした ビットマップ読み込み後に、アップデート処理などが必要なのでしょうか?
717 名前:k [2008/05/21(水) 17:34:29 ] >>706 $B505ってなんですか?すみません。なにもわからないもんで・・・
718 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 18:35:45 ] >>716 新しいTBitmapオブジェクトを作ってTMenuItem.Bitmapに代入するとうまくいくよ NewBitmap := TBitmap.Create; NewBitmap.LoadFromFile('....'); New1.Bitmap := NewBitmap; NewBitmap.Free; // 解放を忘れずに
719 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 18:53:15 ] >>716 New1.Bitmap.LoadFromFile('C:\hogehoge\new.bmp'); New1.Bitmap.Canvas.Refresh;
720 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 19:22:32 ] copy関数で何文字目とか文字数とかの設定は 関数にできないんでしょうか?
721 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 19:26:32 ] 日本語でry
722 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 19:41:31 ] >>720 こういうこと? function TForm1.CopyEx(S:String; Idx, Cnt:Integer):String; begin Result := Copy(S,Idx,Cnt); end;
723 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:23:11 ] >>722 申し訳ないです。 関数にできないんでしょうか? は変数にできないんでしょうか? の間違いです。
724 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:30:50 ] 722に申し訳がるこた全くなし つうか変数使えるでしょ?たぶん
725 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:32:56 ] >>723 こういうこと? var Idx,Cnt:Integer; begin idx := 1; Cnt := 2; Edit2.Text := Copy(Edit1.Text, idx, Cnt); end;
726 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:45:03 ] >>725 a1 := edit1.text; a2 := strtoint( a1 ); data := copy( Edit2.Text,a2,1 ); ここで悩んでます。
727 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:49:51 ] はぁ?
728 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:50:09 ] >>726 edit1.textに数字を入力すれば普通に動くと思う ↓またはこうする a1 := edit1.text; try a2 := strtoint( a1 ); finally a2 := 0; end; data := copy( Edit2.Text,a2,1 );
729 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:54:58 ] a1 := edit1.text; a2 := Length( a1 ); data := copy( Edit2.Text, a2, 1 ); こーゆーこと?
730 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:16:39 ] いやあエスパーさんばっかいるなwww
731 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:24:18 ] >>728 そこはexceptだろ
732 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:26:00 ] >>731 細かいなw
733 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:26:02 ] >>731 strtointdefで
734 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:27:24 ] >>728 var bno:string; keta:string; k1,k2 : string; kk1,kk2 : integer; a1,a2 : string; procedure TForm1.Button2Click(Sender: TObject); begin a1 := copy(bno,kk1,1); a2 := copy(bno,kk2,1); edit2.Text := a1+a2; end; procedure TForm1.Edit2Change(Sender: TObject); begin keta := edit2.text; k1 := copy(keta,1,1); kk1 := strtoint(k1); k2 := copy(keta,2,1); kk2 := strtoint(k2); end; コンパイルは通るのに実行するとエラーが出ます(涙)
735 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:30:36 ] edit2でキー押したとたんに落ちたの?>>734
736 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:32:51 ] とりあえず書き方がうざすぎる
737 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:33:00 ] >>735 はい。 デバッガ例外通知が出たので 継続ってすると ”は整数ではありません と怒られました。
738 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:33:35 ] >>734 bnoには何が入ってるのよ
739 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:34:50 ] >>738 ほかのEditから取り込んだ数値が入ってます。
740 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:39:46 ] >>739 ↓この行にブレークポイント置いてketaの中身をチェックしてみ k1 := copy(keta,1,1);
741 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:43:16 ] >>740 やってみます。 ありがとうございました
742 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:45:58 ] とりあえず1度深呼吸してからヘルプのOnChangeを10000回ぐらい読んでこい>>741
743 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:47:05 ] Edit&数値処理の基本 var n: Integer; begin try n := IntToStr(Edit1.Text); ShowMessage(Format('%dの二倍は%d', [n, n * 2])); except ShowMessage(Edit1.Text + 'は数値ではない'); end; end;
744 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:50:31 ] >>740 >>742 >>743 EditChangeに入れてた式を ButtonClickに移動したらエラーが出なくなりました。 もっと勉強します
745 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:51:48 ] 例外がどこで起こってるかくらいてめぇで調べられないのかよ・・・ 嘆かわしいのぅ
746 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:54:31 BE:348454-PLT(12660)] >>744 頑張ってね
747 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 22:56:18 ] IDEで挿入されるもの以外小文字で書いてる人よく見るけど見づらくないのかな
748 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 23:16:44 ] 大文字と小文字が区別されないという特徴をうまく使っていると思っている方々なんですよ、わかりません。
749 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 04:34:37 ] TDateTimePickerのKindプロパティをdtkTimeにし、Formatプロパティに日付を表示するように設定した場合、 日付を編集し、その後に時刻を編集すると日付が元に戻ってしまうのですが、 OnChangeなどを監視するなどしか対策方法はないでしょうか ヘルプには 「Format プロパティに日付フィールドのコードが含まれている場合には日付部分も編集できます。」 と書いてあるのに・・・
750 名前:716 mailto:sage [2008/05/22(木) 10:04:22 ] >>718-719 ありがとうございました
751 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 19:06:30 ] Delphi5, TStringGrid にデータ表示 1レコード1行の場合OnDrawCellイベントで if Grid.Row = ARow then begin Grid.Canvas.Brush.Color := '紺色'; Grid.Canvas.Font.Color := '白色'; Grid.Canvas.FillRect(Rect); end else begin Grid.Canvas.Brush.Color := Grid.Color; Grid.Canvas.Font.Color := Grid.Font.Color; Grid.Canvas.FillRect(Rect); end; として、フォーカスが当たっているように見せています。 1レコード2行の場合はどうすればいいでしょうか? Grid.Row が2の倍数で ARow = Grid.Row + 1 Grid.Row が2の倍数以外で ARow = Grid.Row - 1 の条件の時にも 背景・前景色を変更したけど、フォーカス色が残ってしまう場合があります。 OnDrawCell内で Grid.Repaint; を実行するとチラつきます。 Grid.Invalidate; だと さらに チラつきっぱなしです。 複数行フォーカスってどうやるんでしょうか?
752 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 19:33:21 ] >>751 一行が二行に見えるように描画すればいい。
753 名前:デフォルトの名無しさん [2008/05/23(金) 10:53:01 ] Delphi過去ログ検索が見つからないのですが、 もしかして畳んでしまわれたのかな・・・? leed.issp.u-tokyo.ac.jp/~takeuchi/delphi/nsearch.cgi
754 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 11:16:34 ] >>753 みたいです。MLでも話題になっています
755 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 15:10:14 ] Webサーバのあるディレクトリのファイル名の一覧を FindFirst, FindNext みたいに HTTPで取得する方法ってあります?Delphi7 + Indy9 ですけど
756 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 16:55:39 ] お前は行ったことの無い店の商品が分かるのか? そういうことだ でも店によっちゃホームページとかで公開してる場合もある それと同じようにファイル一覧が見れるページもある
757 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 17:56:19 ] 出来たらCGIがスケスケで大問題だね
758 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 17:56:57 ] >>753-754 MLにご本人からポストがありましたがWeb鯖が停止しているだけのようで。 閉鎖の予定は無いそうですよ。
759 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 19:08:33 ] >>756 >>757 あ、自分のサーバーなんです。ユーザーに配るプログラムから、 特定のディレクトリのファイルを全部 GET でダウンロードできるように したいと思いまして(そこに置くファイルは変化します)。 でも出来ないみたいなのかあ。
760 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 19:12:38 ] >>759 それなら、ファイルの一覧を取得して返すCGIを置いといて、それにアクセスすればいいと思うよ
761 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 19:31:11 ] 自鯖ならFTPか何かで取得してもいいんじゃ?
762 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 20:34:51 ] あ、そうか。CGI方式もFTPでもいけそうかあ。 ありがとう。FTPはパスワード変更しそうなんでCGIで検討してみます。 # 最初の質問、説明不足でスミマセンでした。
763 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:13:48 ] TComboBoxでドロップダウンのアイテム選択しているとき、 DELキーを押したら選択アイテムをItemsからむ削除したいんだけど出来るかな? ブラウザの検索履歴を消すイメージで
764 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:18:07 ] そりゃできるだろ
765 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:21:07 ] >>764 どーやるの?
766 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:29:11 ] どこがわからないんだよ
767 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:29:52 ] こいつのがんばり方が正直よくわからない
768 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:55:45 ] TComboBoxでやるのは意外と大変かもよ。 ブラウザは独自のComboBoxもどきでしょうね。
769 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:04:18 ] >>766 itemsの中身がペロッと出て、 そのペロッと出たリストを選んでいる状態で、 DELキーを押したときの処理なんだけど… 説明がヘタですまん
770 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:08:32 ] ボタンイベントを監視してDELが押されたら現在選択中の番号取得してそこをリストから削除すりゃーいい話だろう
771 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:12:22 ] ん?よくわからないんだがこれじゃだめなの? procedure TForm1.ComboBox1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var i:integer; begin if key=VK_DELETE then for i:=0 to combobox1.Items.Count-1 do if combobox1.Text=combobox1.Items[i] then combobox1.Items.Delete(i); end;
772 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:15:18 ] あぁItemIndex使えばいいか
773 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:18:20 ] keyPressだとうまく行かなかったけど、KeyDownならうまく行きそうだね >>771 ありがとう
774 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:36:26 ] たびたびすいません >>771 でうまくいったと思うんだけど、 ペロッと出してない状態でも、textにitemsと同じ文字列が入ってる状態で DELキー押すとitemsから削除されちゃうのは、しょうがないですかね?
775 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:39:13 ] >>774 DroppedDownは?
776 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:43:24 ] >>775 それはイベントですか? DroppedDownの意味がわからなくてすいません
777 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:44:25 ] ヘルプは?
778 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:47:27 ] >>777 ヘルプに乗ってました ↓こうしたらうまくいきました 助かりました! if (ComboBox1.DroppedDown) and (key=VK_DELETE) then begin
779 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:53:43 ] ループしてる時に固まることがあるのでUpdateWindowを毎回やってるのですが、それでも固まってしまいます UpdateWindowよりも確実な方法はあるのでしょうか? Application.ProcessMessageは遅い印象があるので使いたくないです
780 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:56:39 ] >>779 スレッドに分ける
781 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 01:05:51 ] >>780 なるほど、マルチスレッドにはあまりしたことがないので思いつきませんでした ですがループで毎回メインフォーム弄ってたらそれも遅くなったりしませんかね?
782 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 02:02:11 ] >779 > Application.ProcessMessageは遅い印象があるので使いたくないです 印象だけで排除するのはどうよ?つかたぶんその印象は間違っている。
783 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 03:52:27 ] >>781 自分で考えてください
784 名前:デフォルトの名無しさん [2008/05/24(土) 07:08:07 ] >>779 ・マルチスレッド化する ・Sleep();を入れる マルチスレッドにしてもWait入れたりSleepしないと重くなるけどな