DelphiのIndy TIdHTTPでGETなどを行っても、処理が返ってこない時があります。
正確にはOnConnectまでは発生するがまったくそこから動かない状態。
その場合、GETメソッドのURLをURLEncodeしていない可能性があります。
DelphiのIndy TIdHTTPでGETなどを行っても、処理が返ってこない時があります。
正確にはOnConnectまでは発生するがまったくそこから動かない状態。
その場合、GETメソッドのURLをURLEncodeしていない可能性があります。
TFrameはフォームのように設計できますが、OnCreate, OnDestroyイベントがありません。
しかし上位クラスからCreate, Destroyを継承すれば問題なく初期化、廃棄処理ができる。
public宣言に以下を追加
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
あとは実装するだけ。
DelphiでTextRect関数を使用して文字を描画する場合、TTextFormatsで描画位置を調整できます。
しかしtfVerticalCenterという型があるのに、指定しても上下中央になりません。
試行錯誤した結果、tfVerticalCenterはftSingleLineを同時に指定しないと有効にならないようです。
Delphiで多数のメニューを使う場合、TImageListで画像を一括管理するのが便利です。
しかし大きなアイコン、大きなアイコンのフォーカス状態、小さなアイコン、小さなアイコンのフォーカス状態・・・などと作っていくと、管理するだけで大変です。
しかもアイコン全てのTImageList内の並び順も同じにしなければアイコンが狂ってしまいます。
そんなときに役立つテクニックです。
Delphiでシンタックスハイライティング、オートコンプリート、高度な行数えなどなどを実現してくれるエディタコンポーネント「SynEdit」を紹介します。
翌月の1日を代入し、そこから1日引くことで作成できる。
var LastDay : TDate; begin LastDay := StrToDate(‘2011/11/1’); LastDay := LastDay - 1; ShowMessage DateToStr( LastDay ); end;
DelphiでTValueListEditorの行が狭すぎるときがあります。
DelphiでTThreadを使っていると、「スレッドエラー:ハンドルが無効です。(6)」というエラーが生成されることがあります。
FreeOnTerminateが設定されているとなぜか起こる場合がよくあるので、もしFreeOnTerminate = Trueで使っている場合は、Falseに切り替え、外部からThreadにFreeをかけるようにすると直るときがあります。