1 名前:デフォルトの名無しさん mailto:sage [2005/11/23(水) 23:31:08 ] Delphi初心者が問題をコツコツと解きながらレベルアップするためのスレです。
152 名前:デフォルトの名無しさん [2006/09/13(水) 22:06:31 ] EXEファイルと同じフォルダが前提ならそのままがいいと思うが。
153 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 22:39:21 ] >>152 お前はそのままでいいよw
154 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 23:24:42 ] >>152 は、今後大変だな・・・
155 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 00:35:54 ] >>150 お主、俺を超えたな!?
156 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 04:04:15 ] カレントディレクトリが変わるたびに、あちこちにいっぱい ini をつくるけどね
157 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 05:19:24 ] TIniFile って相対パス渡すとプロファイルフォルダに作られなかったっけ?
158 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 07:56:03 ] なんにせよそういう不安定要素は削除しないとな
159 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 10:09:08 ] >Delphiで無料でプログラミングしてみるお >ttp://pc8.2ch.net/test/read.cgi/tech/1139675970/239 >ソースと実行ファイル >vipperup.orz.hm/miniup/src/viup0403.zip これって、もう手に入らないの?
160 名前:デフォルトの名無しさん [2006/09/14(木) 16:02:35 ]
161 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 18:21:31 ] 授業を受けに来たのに先生がいませんよ。有給ですか?
162 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 18:37:24 ] >>132
163 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 22:25:29 ] 別のアプリケーションにエンターキーを送りたいのですが、アプリケーション側でなにか 対策をしているらしく、keybd_event ではエンターキーだけが認識されません。 (そのアプリ上でエンターキーを直接押せば認識される) こういった場合、どのようにすればいいのでしょうか?
164 名前:163 mailto:sage [2006/10/06(金) 22:49:19 ] >>163 すみません、、、スレ間違えました。別スレに行ってきます。
165 名前:デフォルトの名無しさん [2006/10/16(月) 03:02:58 ] Delphiで Vbでいうところの Validate イベントを実現したい。 どうすればいい? Procedure TXXXXX.OnValidate(Sender : TObject;Cancel : Boolean); Cancel := True; とすれば、フォーカスが抜けないようにする。 どうやったらできるんだろう? TEdit を継承して、 WndProc を オーバーライドして CM_EXIT をフックしてみた。 TEdit ではうまくいったが TComboBox ではうまくいかなかった(DropDownList では おk で DropDown ではNg だった)。 誰か経験者か、うまいやり方知ってるひと教えてください。
166 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 09:10:19 ] やったことないけどOnEnterでValidateすべきかどうか(どこかで)設定しといて WM_KILLFOCUS受け取ったときに上記状態なら指定されたところにチェックしにいくとか
167 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 09:25:28 ] OnChangeかOnExitの時に、 Cancel=Falseなら、Combobox.setfocus
168 名前:デフォルトの名無しさん mailto:sage [2006/10/16(月) 10:42:34 ] procedure TForm1.hogeExit(Sender: TObject); begin チェック処理 if エラー then begin Enabled := False; Application.ProcessMessages; Enabled := True; hoge.SetFocus; end; end;
169 名前:デフォルトの名無しさん [2006/10/16(月) 16:57:31 ] TPrinterで印刷の集約指定等の設定変更できますか?
170 名前:デフォルトの名無しさん [2006/10/16(月) 17:36:53 ] 印刷設定ダイアログ結果をWindowsに反映する方法教えて下さいでつ。
171 名前:デフォルトの名無しさん [2006/10/17(火) 01:33:57 ] >>166 ありがとうございます。 WM_KILLFOCUSでも同じでした。 >>167 ,168 ありがとうございます。 TComboBox の派生クラスに OnValidate イベントを実装したいのです。
172 名前:デフォルトの名無しさん [2006/10/19(木) 10:09:05 ] DoExitをオーバーライドするのはどうですか? procedure TMyCombo.DoExit; var Cancel: Boolean; begin if Assigned(FOnValidate) then begin Cancel := False; FOnValidate(Self, Cancel); if Cancel then begin SetFocus; Exit; end; end; inherited; end;
173 名前:デフォルトの名無しさん [2006/10/19(木) 10:47:13 ] Delphi7 SQLServer2000 使用です。 exceptにて、EDatabaseErrorが発生した場合に、 そのエラーNoを取得したいのですが、どのように書けばよいのでしょうか? 現時点では下のように書くところまでやりました。 except on E: EDatabaseError do begin Result := False; end; end;
174 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 11:09:58 ] >>173 いろいろ考えられるね。 ・E.MessageにエラーNoが入ってるならそこから抽出する。 ・E.ErrorNoみたいのがあるならそれを使う。 ・SQLServer2000にGetLastDBError見たいな関数があるならそれを利用する。
175 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 11:19:34 ] >>173 BDE使ってるならEDBEngineErrorでcatchすれば エラーの詳細が取れるけど。 どうやって接続してるの?
176 名前:173 [2006/10/19(木) 11:24:15 ] >>174 すみません、もっと根本的な問題だったようです。 やりたいことは、レコードロックによるタイムアウトエラーを取得したいのですが、 タイムアウトはEDatabaseErrorではないようです。 タイムアウトはEDatabaseError以外のどのExxxErrorでとれるのでしょうか?
177 名前:173 [2006/10/19(木) 11:25:55 ] >>175 データモジュールにADOConnectionを貼り、ADOQueryで実行しています。
178 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 11:35:44 ] >>176 そこまで細かいことは自分で調べちゃった方が早くね?
179 名前:デフォルトの名無しさん mailto:sage [2006/10/19(木) 11:46:42 ] >>176 on E: Exception で捕まえて、E.ClassNameを調べる
180 名前:173 mailto:sage [2006/10/19(木) 15:30:24 ] >>178 、179 ありがとうございました。 調べたところ、EOleExceptionと出ました。
181 名前:デフォルトの名無しさん mailto:sage [2006/11/04(土) 19:10:27 ] SyncObjsの中にあるTCriticalSectionですが、 EnterとAcquire、LeaveとReleaseの違いは何ですか? いろいろ試した限りでは同じ処理に見えるのですが・・・
182 名前:デフォルトの名無しさん mailto:sage [2006/11/04(土) 22:59:27 ] >>181 ヘルプ見た? その上で動作が同じだと判断するなら同じなんです 深く考えすぎないほうが良いかと
183 名前:デフォルトの名無しさん mailto:sage [2006/11/06(月) 22:23:11 ] >>182 TCriticalSectionのページに行こうとしても、 リンクがみつかりません って出るんですよ 無料のDelphi6だからかな? まぁ気にしないことにします
184 名前:デフォルトの名無しさん [2006/11/07(火) 11:13:41 ] QuickReport印刷内容をビットマップ(Jpegでもおk)に落とす方法教えて下さい。
185 名前:デフォルトの名無しさん mailto:sage [2006/11/07(火) 18:24:07 ] そういうプリンタドライバがあるよ
186 名前:デフォルトの名無しさん [2006/11/23(木) 13:53:16 ] リレー動作のプログラムなんですが64個のリレーを チェックボックスに分けて選んでリレーを ON/OFFしたいんですが procedure TForm1.Button1Click(Sender: TObject); begin Relay[Time]:=True; Time:=Time+1; RelayChange; end; これからどう増やせばいいでしょうか? どうかよろしくお願いいたします。
187 名前:デフォルトの名無しさん mailto:sage [2006/11/23(木) 20:25:23 ] >>186 日本語でおk
188 名前:デフォルトの名無しさん [2006/11/25(土) 17:27:49 ] IsDelphiで、このソフトが、Delphi製とでるのですが、 www.highdots.com/css-tab-designer/ オフィスっぽいGUIは、どんなコンポーネントを使っているんでしょうか?
189 名前:188 [2006/11/25(土) 17:28:27 ] すみません。超初心者スレと間違えました(汗
190 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 17:35:38 ] コンストラクタ内で例外を発生させるのってまずい? 自作クラスのコンストラクタの引数で作業フォルダのパスを指定して フォルダが存在しなければ作成ってのをやろうと思うんだけど、 try〜finallyの手前でCreateすると例外が発生したときに例外を捕まえられないし try内の先頭でCreateするとコンパイルで「初期化されていない可能性があります」と警告が出る。 コンストラクタは内部変数の初期化だけにしておいて 作業フォルダのパス指定は別メソッドにしておいたほうがいいのだろうか・・・
191 名前:デフォルトの名無しさん mailto:Tage [2006/12/25(月) 19:14:46 ] >>190 try Create try hoge finally hoge end; finally hoge end;
192 名前:デフォルトの名無しさん mailto:sage [2006/12/29(金) 14:20:58 ] >190 Delphiにおいてはコンストラクタ内で発生して捕捉されない例外は コンストラクタの失敗を意味する。
193 名前:デフォルトの名無しさん [2007/01/06(土) 19:54:05 ] hosyu
194 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 03:40:04 ] 2chブラウザのJaneみたいな動かせるメニューバーってどうやって作ったらよいのでしょうか。
195 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 03:58:26 ] >>194 TCoolBar のバンドの .Control に TToolBar 設定して、 TToolBar.Menu に TMainMenu 設定。
196 名前:デフォルトの名無しさん [2007/01/31(水) 17:58:13 ] Bitmap画像をレイアウト部分はコーディングでなくてポトペタで作成したいのですが、 良い方法はありますか? QuickReportで良いのですがQuickReportは汎用画像出力が出来ないので...
197 名前:196 [2007/01/31(水) 19:05:07 ] そういう機能をレポーティング コンポーネントって言うらしいですね。 でもWin32用が無いお。
198 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 23:11:14 ] >196 日本語でおk
199 名前:デフォルトの名無しさん [2007/01/31(水) 23:15:30 ] グラフィックソフトとか、ワープロでつくるようなをDelphiでやりたいんじゃないの? で、最終的に、印刷じゃなくて、画像にしたいと。
200 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 07:58:21 ] .netを普及させる方法を思いついた! win32に、WCaption: WideString みたいなメンバを追加して さらにくそでかく遅いバイナリしか生成できなくする。 これなら.netでいいや、ってなりwin32死滅。
201 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 16:54:35 ] 日本語でおk
202 名前:入門きぼん mailto:sage [2007/03/18(日) 23:52:34 ] すみません。教えて下さい。 DelphiTurboExplorerを、サイトからDLして使用したいと考えているのですが、 ユーザー登録をすませても、DLページに行けずに困っています。 それと、フリーのデーターベースであるFirebirdと 繋げられるのでしょうか? やはり製品版でないと無理なのでしょうか? 自分は、単純に初心者向けプログラムである。 CDやDVDの在庫管理アプリを作りたいだけなんですが、 自分の労力以外は、極力フリーで作りたいと思っています。 可能でしょうか? 宜しくお願いします。
203 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 00:54:43 ] www.turboexplorer.com/downloads
204 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 01:06:50 ] >>203 The page cannot be found
205 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 06:01:06 ] www.turboexplorer.com/mirror
206 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:33:22 ] >>204 ,205 HTTP Error 404 - File or directory not found.
207 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 20:46:50 ] ttp://torrent.borland.com/turbodelphi_jp.exe
208 名前:202 mailto:sage [2007/03/19(月) 21:55:11 ] >>207 すみません。 やはりHTTP Error 404 - File or directory not found.になります。 みなさん、ありがとうございました。 残念で、悲しいですが、すみませんがDelphiあきらめます。
209 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:07:23 ] 繋がるけどなぁ www.codegear.com/tabid/144/Default.aspx
210 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:22:27 ] >203 >205 >209は普通に繋がるね。
211 名前:デフォルトの名無しさん [2007/03/21(水) 07:19:26 ] 普通につながるけど?
212 名前:デフォルトの名無しさん [2007/03/21(水) 23:56:26 ] 条件文がたくさんあって、それらを同じ処理するときはどうしたらいいですか? ifのあとに条件をズラーッとandでくっつけるしかないのでしょうか? 例えばxが1 3 5 6 7 10・・100と不規則なときに、一定の動作をさせたいです。
213 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 00:14:26 ] case x of 1,3,5,6,7,10,100: 〜〜'; else 〜〜; end;
214 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 07:13:44 ] if x in [1,3,5,6,7,10..100] then XX; ってのもあるよ
215 名前:デフォルトの名無しさん [2007/03/22(木) 14:14:54 ] 二次元配列があり地図のようになってるとします。 その時に●から一番近い5(複数ある)への経路を求める問題。 マスは30*30 ●は(16、16) 0は通れる、1は通れない、4はいやな人 で、5の周りに4がいた場合それは目的の5にはなりません。 000000000000000000000000000000 000000000000000000000000000000 000000111100000000050000000000 000000001100000000000000000000 000000000100541110000000000000 000000000000111111000000000000 000000000000000000000000000000 001100000000000000000000000000 00000000000000●000000000000000 000100000000000000000000000000 000100000000000111111110000000 000000000000000000000000000000 000000500000000000050000000000 000000000000000000000000000000 000000000000000000000000000000
216 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 12:23:28 ] >>215 2chのレス数じゃ無理w 試しに幅優先探索して書こうとしたら、600行超えたからやめたw
217 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 17:39:42 ] >>215 たけしのコマ大かと思った・・・。 斜め移動はあり? 地形は固定? 障害物1等のオブジェクトは、定数? つっこむ所が多々ありそうだなぁ。
218 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 19:35:42 ] >>215 普通にA*でいいんじゃないの? >>216 600行はありえん。
219 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 00:12:27 ] >>217 俺は斜め移動無し、固定でMAPはファイルからそのまんま読み込んだ状態としたよ んで、今の箇所から上下左右で自分の関数を呼び出して、再起関数にして探してった。 でもこれじゃ全数検索になってしまう。 こういうアルゴリズム習ったけどやり方有ってるか不明 >>218 A*って何?
220 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 04:42:33 ] 工場勤務でブルーワーカなのだが、明日から夜勤なので睡眠時間調整の 暇つぶしに >>215 をやってみた。5時間かかったお。 再帰呼び出しとかは使えないし分からんので、長めになっちゃった。 キュー(FIFO)をやってみようと思って、ポインタとか使ってみたけど訳分からん。 ttp://strawberry.web-sv.com/cgi/up/iuy/nm4383.zip.html (フォームにボタン1個要) だって、MC工作機械マクロ言語に再帰呼び出しとかポインタなんて無いよ orz あ、でも、なんちゃってポインタは出来るかな? #(#10) な感じで。
221 名前:デフォルトの名無しさん [2007/03/25(日) 07:25:37 ] A Starでやれ
222 名前:デフォルトの名無しさん mailto:sage [2007/03/27(火) 02:25:05 ] 昔Delphi6触ったときにはたしか標準でフォルダ選択ダイアログってなかったような気がするんですが TurboExplorerにもなかったりします?
223 名前:デフォルトの名無しさん mailto:sage [2007/03/27(火) 06:53:37 ] SelectDirectoryなら昔からあったと思うが? 名前がセレクトフォルダじゃないからダメなの?
224 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 09:12:04 ] Delphi6のSelectDirectoryはダイアログの表示位置がずれるバグがあるんだよな
225 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 09:45:16 ] バグじゃないよ、たんに場所指定してないだけ。ML の過去ログやら、コンポ で解決したのがわんさかあったけど、いまは知らない
226 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 09:54:17 ] まあ、フォルダのD&Dに対応しとけば、みんなソレ使うから SelectDirectoryはとりあえずあればいいやみたいなもんだし
227 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 21:40:15 ] uses FileCtrl; procedure TForm1.Button1Click(Sender: TObject); var dir: string; begin MoveWindow(Application.Handle , Left ,Top ,0 ,0 ,False); SelectDirectory('表題', '', dir); Label1.Caption := dir; end;
228 名前:215 mailto:sage [2007/03/29(木) 09:06:36 ] >>220 遅くなったがサンクス! ただ、速度おっそいなぁw
229 名前:デフォルトの名無しさん [2007/03/31(土) 10:40:58 ] 保守
230 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 19:52:37 ] 現在BDEで作成されているものをFirebirdに簡単に変更できるものでしょうか Firebirdはまだ触ったこともないし、BDEもそのとき玉々作ってみただけの データベース素人ですが。
231 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 13:26:52 ] >>230 どういう作りになっているのかにも寄るけど 簡単には無理じゃね。
232 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 20:33:05 ] >>231 ありがとうございますm(_ _)m やっぱ作り直しですか。
233 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 20:57:31 ] いや、普通にコンポーネント貼り付けて作ってるなら InterBase Data Access に変えるだけで問題ないだろし そうでないなら、それなりに大変だろうってだけさ
234 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 21:59:34 ] やってみまふ。
235 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 13:29:14 ] ヒント: Firebird ODBCドライバ
236 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 20:04:01 ] 今しばらくは生きていけそうです
237 名前:疑問 mailto:sage [2007/04/16(月) 02:52:02 ] なんでIntegerとかが予約語になっていないのでしょうか var Integer: string; begin Integer := 'Double'; Writeln(Integer); end.
238 名前:デフォルトの名無しさん mailto:sage [2007/04/16(月) 08:03:01 ] Integerは予約語ではないけど定義済の型名だから 変数として使うと、 使った後整数型の定義とか、型変換とかで困ってしまうよ 他の型名とか自分で定義する型名も同じ事情があるよ。
239 名前:デフォルトの名無しさん mailto:sage [2007/04/16(月) 16:19:27 ] 回答になってねぇw
240 名前:デフォルトの名無しさん [2007/04/16(月) 23:21:03 ] >>237 なんでだろ。 Windows.hとかのCからコンバートしたときのための兼ね合い? 似たようなので、引数でも例外あったような
241 名前:名無し@沢村 [2007/04/17(火) 00:10:20 ] おみゃーらー♪ Delphiはつまらんぞー! おみゃーたー、『肥えた語』つー言語があるの知ってる? おりは知ってるよ。 おりがつくった言語よ。これからh『肥えた語』の時代よ。 URLはここよ↓ www.geocities.jp/hontamagod/ 感想を頼むなー♪
242 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 22:52:08 ] JEDI がDelphi2005にインストールできません。 以前入れたときは確か、すんなり入ったのですが。 ..\JEDI\jvcl\run\JvJVCLUtils.pas(7359) エラー: E2010 'Char' と 'string' には互換性がありません ..\JEDI\jvcl\run\JvJVCLAboutForm.pas(115) 致命的エラー: F2063 '..\..\run\JvJVCLUtils.pas' ユニットはコンパイルできませんでした ほかにも出てきます。 pas は秀丸では欧文フォントで文字化けなしに読めたんですが「TM」とかの特殊文字が ○株みたいに扱われているんでしょうか、Shift-Jis ではChar扱いしてもらえないようです。 OSは Vista D5 にはインストールされています。 m(_ _)m
243 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 23:02:28 ] せめてバージョンくらい書こうよ・・・
244 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 23:05:38 ] すんません、JVCL320CompleteJCL197-Build2172.zip でした。
245 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 23:07:22 ] なんでそんなに古いのを入れようとしてるの?
246 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 23:17:26 ] そんなに古いのー?
247 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 23:18:12 ] すみまそん。 しばらくD5で使ってたのでそれをそのままフォルダからインストールしようとしてました。
248 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 23:19:48 ] それだとD5でコンパイルされたファイルと混じっておかしくなるんじゃない?
249 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 23:28:30 ] やっぱそうですか。 はき出す場所が違うからOKだと思っていたのですが、 とりあえず2005には最新版を入れてみます。
250 名前:デフォルトの名無しさん mailto:sage [2007/04/24(火) 20:28:58 ] JVCL331CompleteJCL199-Build2551.zip 入れてみましたが状況は変わりませんでした(x.x)
251 名前:デフォルトの名無しさん mailto:sage [2007/04/24(火) 21:14:09 ] 前にインストールしたときのゴミが残ってるんじゃないかね。 とりあえずJcl*.bplとJv*.bplを削除してみたら?
252 名前:デフォルトの名無しさん mailto:sage [2007/04/24(火) 21:28:50 ] ってことは皆さん問題なく入れていたということなんでしょうね。 結局使わない部分っぽかったので修正して無理矢理入れてしまいました。 JvgUtils.pas function Transliterate(const Str: string; RusToLat: Boolean): string; コメントアウトで Result := Str; JvDBGrid.pas FCharList := ['A'..'Z', 'a'..'z', ' ', '-', '+', '0'..'9', '.', ',', Backspace{, 'e', 'e', 'e', 'e', 'o', 'o', 'u', 'u', 'a', 'a', 'a', 'i', 'i', 'c'}]; 下半分をコメントアウト JvJVCLUtils.pas // Text: Char; Text: string[2]; Char を string に変更 JvStrToHtml.pas 特殊文字 27 個コメントアウト ありがとうございましたm(_ _)m