1 名前:デフォルトの名無しさん mailto:sage [2005/11/23(水) 23:31:08 ] Delphi初心者が問題をコツコツと解きながらレベルアップするためのスレです。
116 名前:デフォルトの名無しさん [2006/03/31(金) 11:14:10 ] TBitmap→TJpegImage→Jpegファイル、とやってますが、 DDBからDIBにするとメモリ減りますか? コーディングも簡単でつか?
117 名前:デフォルトの名無しさん mailto:sage [2006/03/31(金) 12:06:28 ] やってることと、質問の内容が噛み合ってない
118 名前:116 [2006/03/31(金) 13:30:05 ] いやだから、 TBitmap(DDB)→TJpegImage→Jpegファイル から TBitmap(DIB)→TJpegImage→Jpegファイル に変更。 今は意識してないけど、TBitmapってデフォはDDBだおね?
119 名前:デフォルトの名無しさん mailto:sage [2006/03/31(金) 13:50:09 ] 大差ないよ。
120 名前:デフォルトの名無しさん mailto:age [2006/05/29(月) 00:58:17 ] feeddemonってRSSリーダーがあるんですが v1のときにhtaのような使い方をしている 部分(左のチャンネルリスト)をどう実装してるのか わからないんですが、誰か教えてください詳しい人
121 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 13:16:35 ] > Delphi初心者が問題をコツコツと解きながらレベルアップするためのスレです。 すれ違い
122 名前:デフォルトの名無しさん [2006/06/09(金) 17:59:34 ] マウスカーソルをアルファベット文字、もしくは単語にしたいのですが、 簡単にできますか? アルファベット毎にカーソルファイルを作るのでなく、 コーディングでやりたいです。
123 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 18:47:12 ] 簡単にはできないでしょ。すなくとも動的にアルファベットの画像をつくらなきゃならないし。
124 名前:デフォルトの名無しさん mailto:sage [2006/06/09(金) 19:15:11 ] >>122 forum.nifty.com/fdelphi/samples/00368.html TBitmapを作成して そこに文字を書いて、 それからCreateCursor
125 名前:122 mailto:sage [2006/06/12(月) 08:41:29 ] >>123 >>124 サンクス。 ちょっとひねればコーディングできそうですね。
126 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 09:14:12 ] どうぞよろしくお願いします Delphi7.0上で、3層の情報系の業務アプリケーションを構築しています データベースはOracle9iです UIでは、ADOレコードセットを入力データソースするMicrosoftのActiveXコンポーネント を使用しています BDE、DBExpressやBizSnapを利用すれば3層のデータアプリケーションは作成できる ことは分かりました データセットプロバイダ経由でデータを取得しようとすると、クライアント側はClientDataSet として受け取ることになるのですが、どこかでADOレコードセット形式に変換しなければなりません 試しにClientDataSetをまわしながらADOレコードセットにフィールド定義とデータ値をコピーする 方法を試してみましたが、処理時間とCPU負荷が半端ではなく、とても採用できませんでした 他には、BizSoapを利用した形式では、サーバー側でADOレコードセットとしてデータ取得後に Saveメソッドを利用してXML形式で一旦データ出力し、Soap経由でテキスト送信し、クライアント 側では受信内容をファイルとして出力しADOレコードセットのLoadメソッドをCallしてXMLファイル から復元する方法を試したみましたが、これも採用できるものではありませんでした 素直にクライアント側でADOレコードセットとして取得可能な方法としては、リモートデータセット (Microsoft RDS)を利用したDComアプリケーションとして構築する方法もあるので試してみました これは、非常に高速で20万件程度のデータもほぼ一瞬でクライアント処理でき驚いたものですが、 MicrosoftのサポートページではRDS自体が今後は非推奨の技術として明記されており、その点 が引っかかっております どうしてもクライアント側で扱うデータ量が数十万件程度あることでパフォーマンスが重要になって しまいます。 オーバーヘッドがなるべく最小の形でClientDataSetからADOレコードセット形式に変換する方法は ないものでしょうか もしくは、素直にADOレコードセットとしてクライアント側で一発でデータ取得できれば嬉しいです 長文になってしまい申し訳ありません どうぞよろしくお願いいたします
127 名前:126 mailto:sage [2006/09/03(日) 09:22:44 ] 126です 大変失礼しました [ くだすれdELPHI(超初心者用) ] のスレの方に移動します
128 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 00:03:00 ] >>1 問題だしておくれ 初心者でも10分ぐらいで解けて、面白味のあるものがいい
129 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 08:47:19 ] じゃ、俺から問題 ボタンを二つ用意し、片方を非表示とする。 表示されているボタンを押すと、非表示だったボタンを表示し、押されたボタンを非表示に。 これを交互に繰り返せるものを作れ。
130 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 10:14:48 ] くだらね┐(´〜`;)┌
131 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 11:34:13 ] >>130 ならおまえがだせ。 と、いいたいところだが、これはどうだ? コントロールのオーナーをTForm1からTForm2に変える。
132 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 12:30:13 ] 他のスレでTPrinterの話題が出てたんで。 用紙の左上から右に5cm、下に5cmの位置に 「はろーわーるど」と印字せよ フォントは何でもいい
133 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 15:51:09 ] 初心者の基準を考えよ
134 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 16:57:18 ] iniファイル作って 初期データ読み込み書き込みはどうだ?
135 名前:デフォルトの名無しさん [2006/09/12(火) 17:10:37 ] 初心者の基準を考えよ
136 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 20:17:27 ] procedure TForm2.Button1Click(Sender: TObject); begin Button1.Visible:=not Button1.Visible; Button2.Visible:=not Button2.Visible; end; procedure TForm2.FormCreate(Sender: TObject); begin Button2.OnEnter:=Button1Click; Button2.Visible:=False; end;
137 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 20:18:58 ] あ、途中で書き込み押しちゃった >>136 は>>129 への回答です 短くなるように工夫しました 採点お願いします
138 名前:デフォルトの名無しさん [2006/09/12(火) 20:25:08 ] わざわざコードで Button2.OnEnter:=Button1Click; Button2.Visible:=False; をする必要が無い。 0点。
139 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 20:30:07 ] そりゃプロパティでも出来るけどあえて明示してるんでしょうが。
140 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 20:42:49 ] ほかにもフォームの位置とかサイズとか、明示しろよ。
141 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 20:54:32 ] こりゃいかん。
142 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 21:10:23 ] てゆうか先生!なんでOnEnterやねん!Clickや!! と突っ込むところではないの?
143 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 21:12:52 ] ほんとだwwww
144 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 22:23:37 ] TD2006ってコンポにフォーカスさせてF1押してもヘルプでないよね
145 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 23:28:50 ] しらねぇよ。Del6per の方がましだし、そんなの使うヤツの気が知れん
146 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 03:30:32 ] procedure TForm1.Button1Click(Sender: TObject); const FILE_URL = '203.131.199.131:8060/koreiina '; FILE_PATH = 'test.mp3'; var fs: TFileStream; begin fs := TFileStream.Create(FILE_PATH, fmCreate); try with IdHTTP1 do begin Get(FILE_URL, fs); end; finally fs.Free; end; end;
147 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 08:14:13 ] >>145 可哀そうに
148 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 11:33:34 ] TDって略すとTurbo Debuggerかと思ってしまう俺。 (さすがにTokyo Disnylandとは思わないが)
149 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 19:35:33 ] >>144 可哀そうに
150 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 21:21:06 ] >>134 iniファイル読み書きの習作をつくってみました 普通にファイルの読み書きするより簡単かもしれない ちょっと感動!! procedure TForm1.Button1Click(Sender: TObject); var iniFile: TInifile; begin iniFile:=TIniFile.Create('ook.ini'); try count:=iniFile.ReadInteger('CounterApp', 'Count', 0); Inc(count); iniFile.WriteInteger('CounterApp', 'Count', count); finally iniFile.Free; end; ShowMessage(IntToStr(count)); end;
151 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 21:30:06 ] フルパスつかっとけ
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