【Delphi互換!?】FreePascal/Lazarus その2【GPL】 (971レス)
1-

820: 2019/02/28(木) 08:21:58.12 ID:J0qaWP9D(2/2)調 AAS
インストール先は C:\lazarus\2.0-3.2 とかにして、
起動するときは、
C:\lazarus\2.0-3.2\lazarus.exe --primary-config-path=c:\lazarus\2.0-3.2-config
としてconfig ファイルの格納先を個別に指定するのがおすすめ。

もちろん、インストーラが勧めてくる旧バージョンのアンインストールを実行しないこと。
821: 2019/02/28(木) 12:37:08.47 ID:hxOr9lWM(1)調 AAS
--primary-config-pathはlazarus.cfgに書いてる
822: 2019/03/09(土) 22:26:05.47 ID:MctiKVi6(1)調 AAS
Write once, run any architectureを目指すFree Pascalはもっと注目されていい
823: 2019/03/11(月) 08:19:35.82 ID:/m3h4KuN(1)調 AAS
ネィティブコンパイル系の言語では敵なしだと思う
824: 2019/04/11(木) 14:15:28.19 ID:S9MFSdB7(1/2)調 AAS
FormatDateTimeとかでそもそも元号対応してるのWindows版だけなのな
825: 2019/04/11(木) 14:15:46.53 ID:S9MFSdB7(2/2)調 AAS
滅多に使うことはないだろうけど
826: 2019/04/13(土) 10:08:17.34 ID:VAZw4bPr(1)調 AAS
たいてい西暦しか使わないね。お役所の書類で仕方なくって感じかな。
827: 2019/04/17(水) 20:50:39.15 ID:yUqArsz+(1)調 AAS
Lazarus Release 2.0.2 - April 16, 2019, 10:34:02 am
828: 2019/05/07(火) 22:10:10.01 ID:WYmdE2fC(1)調 AAS
久しぶりにLazToApkをバージョンアップしたら、ビルドの仕方が変わっていて使い方がわからず撃沈。
OldVersionもHPにないし困ったなあ。
昔のファイルがあればいいけどなあ、ハードディスク内を探してみるか。
829: 2019/05/07(火) 23:08:19.13 ID:crsXz7PJ(1)調 AAS
困ったなあ(チラッ)
830: 2019/05/08(水) 00:53:50.31 ID:hN+WAUHi(1)調 AAS
svnで好きな時点のソース落とせよ
831: 2019/05/09(木) 07:23:31.91 ID:riNy8fVT(1/2)調 AAS
この機会に手動ビルドを研究したほうがよい。
最近やってないけど大した手間じゃない。
832: 2019/05/09(木) 07:27:45.97 ID:riNy8fVT(2/2)調 AAS
巷によくある、 C++ で作った .so ファイルを apk にする手順を
Laz で作った .so ファイルと読み替えるだけ。
833: 2019/06/17(月) 21:13:48.03 ID:7jkihj6t(1)調 AAS
久々に使い始めたんだけど、ブレークした時にクラスのインスタンスの内部データって見られないんだっけ?
Integer とかの単純な変数は見られるんだけど、例えば TStringList のインスタンスに登録されてる文字列とか。
昔作ったプログラムを見てるんだけど、どうやったか覚えてない。
834: 2019/06/19(水) 05:02:36.99 ID:tVNS+22r(1)調 AAS
【出資】松本卓朗 人工知能詐欺【注意】
2chスレ:rikei
835
(1): 2019/07/02(火) 18:35:04.45 ID:RhWJXLyF(1)調 AAS
TpairSpitterの境界線の上に文字を置きたいのですが、どうしたら良いでしょうか。
境界線のつまみを隠したいのと文字を置きたいのが理由です。
アイデアをください。
836
(1): 2019/07/05(金) 08:04:30.82 ID:R9kjbrwG(1)調 AAS
>>835
TLabelでなくTStaticTextでとかそいうこと?
837: 2019/07/05(金) 21:07:04.96 ID:ypzj5uvi(1)調 AAS
>>836
labelでもpanelでもいいんだけど境界線の上に置きたい。
置こうとしても、隠れてしまって前面に出せないのでどうしたらいいかわからない。
838
(1): 2019/07/05(金) 21:28:30.42 ID:BC1QPJi0(1)調 AAS
当てずっぽうだけどParentをTpairSpitterにすれば実行時には上になる?ならないか?
839: 2019/07/06(土) 09:03:58.53 ID:nIvQZNy6(1)調 AAS
>>838
コンポーネントを継承してTMyPairSplitterみたいなもの作って
描画部分に手を加えたほうが応用も効くしソースもスッキリすると思う。
840
(1): 2019/07/31(水) 06:40:26.15 ID:cxA9kCcM(1/2)調 AAS
Lazarus 2.0.4 - July 25, 2019, 12:17:38 pm
841
(1): 2019/07/31(水) 07:36:45.82 ID:KjSExRFS(1)調 AAS
>>840
be planning やん。
be planning は便利でよく使う構文だからきっちり使えるようにしといたほうがいい
842: 2019/07/31(水) 21:43:24.03 ID:cxA9kCcM(2/2)調 AAS
>>841
ごめんなさい。寝ぼけてましたw
リリースされたと思って書き込んでしまったorz
843: 2019/08/11(日) 06:58:29.91 ID:nBSthP26(1)調 AAS
Lazarus Release 2.0.4 - August 06, 2019, 03:13:13 pm
844: 2019/08/19(月) 08:03:02.74 ID:lAiNzH12(1)調 AAS
FPC 3.2 は2019年度末予定っぽい
845: 2019/11/02(土) 17:36:12.44 ID:zoLz180R(1)調 AAS
Lazrus Release 2.0.6 - November 01, 2019, 12:33:13 pm
846: 2019/11/03(日) 22:59:45.28 ID:vaTmWlaD(1)調 AAS
JVCLってインストールできますでしょうか?
847: 2020/02/27(木) 21:04:57.36 ID:re/ORI54(1)調 AAS
最近Lararus使い始めたんですが、普通に使えるのでびっくりしました。
Delphiで演算子オーバーロードとか使いまくってるソースも問題ないし。
演算子オーバーロードなんて昔は「ソースが一読ではわかんなくなるから反対」なんて思ってたのに。
848: 2020/03/02(月) 07:51:50.68 ID:NBY4tsQ4(1)調 AAS
文字コードUTF8が標準なのでむしろDelphiより使いやすいと思いますよ。
849
(1): 2020/03/06(金) 07:12:08.75 ID:ywadnjOj(1)調 AAS
作ったexeが20メガ超えててなんだかなぁ〜とおもた
850: 2020/03/06(金) 10:30:39.19 ID:50MIG5ia(1)調 AAS
C#ですら数kbだからな
どうせ要らんもんリンクしてるんだろ
851: 2020/03/06(金) 19:54:28.29 ID:bd/m3dXZ(1)調 AAS
C#は知ってても.NET Frameworkは知らなさそう
852: 2020/03/06(金) 21:40:12.67 ID:R7giY7iW(1)調 AAS
乱多忌む
853: 2020/03/06(金) 22:00:00.90 ID:3lybco/N(1)調 AAS
デバッグ情報含んでるからストリップとスマートリンク有効にしろって昔からマニュアルに書いてあるぞ
UPXまでは別にやらんでもいいと思う
854: 2020/03/06(金) 22:49:36.02 ID:wjuomVAd(1)調 AAS
もうこの時代に20メガとかどうでもよくない
855
(1): 2020/03/07(土) 18:19:17.95 ID:RZgTMQsN(1)調 AAS
ktkr
外部リンク:srad.jp
856: 2020/03/07(土) 19:35:21.43 ID:IKkjx2Oq(1)調 AAS
>>849
小さくする設定もある。
コンパイルしたソフトを小さくするソフトもある。
857: 2020/03/07(土) 19:47:00.25 ID:zDuQOlXy(1)調 AAS
Lazarus 側の言い分としては、最初からいろいろリンクしてるから、
これ以降機能追加してもサイズの増加は緩やかということらしいけど、
使いもしない機能リンクしないでほしいわな。
858
(1): 2020/03/18(水) 16:54:18.85 ID:Dqfi0yj0(1)調 AAS
使いもしない機能はリンクしないよ。
ソースプリーズ。
859
(1): 2020/03/18(水) 23:29:19.07 ID:mYKGnRUi(1)調 AAS
>>858
外部リンク:wiki.freepascal.org
どうしてコンパイル後のバイナリがこんなに大きいの?
860: 2020/03/24(火) 05:32:35.18 ID:oNI0kRN8(1/2)調 AAS
>>859
書き方(翻訳の仕方?)のせいかもしれんが、使うからこそ組み込まれるのだよ。
コマンドラインアプリや、Windows API で自前のメインウィンドウだけしかないような
アプリを作って試してみればわかるが数キロバイトになる。
861: 2020/03/24(火) 07:50:05.21 ID:oNI0kRN8(2/2)調 AAS
英語版見てみてみましたが、最新版はかなり内容が違う気がします。
英語版を参考にしたほうが良いと思います。
862
(1): 2020/03/30(月) 20:53:33.92 ID:G4pdB0Ew(1/2)調 AAS
FPC 3.2.0 rc1 始まったで
外部リンク[html]:forum.lazarus.freepascal.org
863: 2020/03/30(月) 20:59:52.63 ID:eoyd+Aho(1/2)調 AAS
>>862
FPCて何?
864
(1): 2020/03/30(月) 21:35:58.65 ID:G4pdB0Ew(2/2)調 AAS
>> 863
Free Pascal Compiler
865: 2020/03/30(月) 22:55:15.59 ID:eoyd+Aho(2/2)調 AAS
>>864
ありがとう
866: 2020/04/03(金) 07:39:20.81 ID:ZRX+L3ok(1)調 AAS
今月新しいバージョンが出っぽいね
We are planning the next release: Lazarus 2.0.8 - April 02, 2020, 10:43:37 am

The Lazarus team has scheduled
Lazarus 2.0.8 for April 2020 (estimated 14th to 20th)
867: 2020/04/03(金) 07:51:25.94 ID:hz9zQM0o(1)調 AAS
コンパイラは3.0.4のままだけどね
FreePascalのリリースがまだかかりそうだから急遽決めたようだね
本来なら次はLazarus 2.2の予定だったみたい
868: 2020/04/16(木) 19:40:21.03 ID:M7pyaxbj(1)調 AAS
Lazarus 2.0.8 リリースされたよ
869: 2020/04/17(金) 20:44:07.94 ID:6AJsww7o(1)調 AAS
何が変わった?
870: 2020/04/18(土) 12:59:34.39 ID:VYQrLT4k(1)調 AAS
>>855
外字って、Unicodeにも私用領域ってあるよな。まああくまでも私用領域であって
外字専用に使うための領域ってわけではないが、そう使っても良いんだよな。
871: 2020/06/10(水) 17:57:11.63 ID:syGP3Y23(1)調 AAS
画面拡大してるとHI-DPI有効にしないとダイアログがでかくなるんすね。
はまりましたわ。
872: 2020/06/26(金) 22:59:51.25 ID:xWDNnrNa(1/2)調 AAS
しらんまにFPC3.2出てましたね。Lazarusの先っちょも3.2対応だとか!
873: 2020/06/26(金) 23:02:47.90 ID:xWDNnrNa(2/2)調 AAS
Lazarus2.0.10も7月には出るとか。
874: 2020/07/08(水) 16:42:25.19 ID:EmKCEK3t(1)調 AAS
FPC3.2はDynamicArrayに大分手が入ったみたいなので、この機会に不定長のビットマップ作成の
手持ちライブラリ書き換えてみるかな。
というか素直にFCL使えって話だが、FCLってFPCのコマンドラインアプリでも使えるの?
875: 2020/07/08(水) 23:32:55.82 ID:Omm2EhW3(1)調 AAS
今の1個前のバージョンでLazarus&FPCの現状はどんなもんかと以前試してみたけど
10年前のDelphiにも遠く及ばない出来だったな
コンパイル速度、デバッグモードの開始、終了が遅く(終了からIDEの切り替えが特に遅い)
フォーム無しのプログラムでメッセージダイアログを出すとコマンドプロンプト画面が出る始末
今も改善されていないんだろうなぁ
876: 2020/07/09(木) 22:35:37.41 ID:vgKD2Erb(1)調 AAS
ソースコードもあるし、別に本家にご注進してもいいじゃん。
なんでそこで終わらなくても良くない?
877: 2020/07/11(土) 06:48:10.64 ID:HRglNQfp(1)調 AAS
2.0.10 アナウンスはまだだけどsouceforge で公開されたね
878: 2020/07/13(月) 19:02:02.10 ID:40nMIxb+(1)調 AAS
Lazarus Release 2.0.10 - July 11, 2020, 10:55:58 am

もうリリースされたって書き込まれていたけど一応。
879: 2020/07/25(土) 21:12:59.00 ID:U1cr0g+B(1)調 AAS
TMemo の表示領域を得たいのですが

var
R: TRect;
begin
R.Left := 0; R.Top := 0; R.Right: = 0; R.Bottom : =0;
Memo1.Perform(EM_GETRECT, 0, Longint(@R));
ShowMessage(Format('Left=%d, Top=%d, Right=%d, Bottom=%d', [R.Left, R.Top, R.Right, R.Bottom]));
end;

を実行すると Delphi 7 だと正しい値が得られるのに Lazarus 2.0.10 だと
Left=0, Top=0, Right=0, Bottom=0
になります。

正しい値を得る方法を教えていただけませんでしょうか。
880
(1): 2020/07/26(日) 02:33:28.70 ID:B7m4RLK/(1)調 AAS
SendMessage(Memo1.Handle, EM_GETRECT, 0, Longint(@R));
でよさそう
881: 2020/07/26(日) 11:23:45.22 ID:q3dJt1F9(1)調 AAS
>>880
ありがとうございます。
早速試してみたところ上手くいきました。
882: 2020/07/28(火) 07:26:11.04 ID:YeCqnbYl(1)調 AAS
せっかくのオープンソースだし、
不具合っぽいのは本家に報告してあげるとよいよ
883: 2020/08/23(日) 00:18:52.03 ID:BDUM7k5s(1)調 AAS
Delphi6でさんざん書いてたのに長いことマイコンのほう(ArduinoやそのほかのC)ばっかりやってたからすっかりPascal忘れてるw
久々にPCのアプリ書こうと思っってLazarusはじめたらforやifですらあれどうだっけ?ってなってるよ
884: 2020/11/05(木) 00:09:00.98 ID:8Msi6NAs(1)調 AAS
TChartのチュートリアルを和訳してみたけどWikiに追加する方法がよくわからない
885: 2020/12/02(水) 23:28:05.83 ID:r6aZV9ch(1/3)調 AAS
FreePascalのXMLチュートリアル、サンプルのしょうもないミスを修正したいが
どうすりゃいいんでしょうか。
まぁPascal使うような極まりきった方々は別にミスあっても自分で修正するでしょうけど・・
886: 2020/12/02(水) 23:30:01.43 ID:r6aZV9ch(2/3)調 AAS
マルチスレッドでレイトレーシングアプリを書いたが、LinuxでもWindowsでも
普通に動くんでビックリしましたわ。
マルチスレッド絡みだからOSとかの癖とかで差異があって大変だと思ってたので。
ちゃんとライブラリで差異を吸収してんですねぇ。
887: 2020/12/02(水) 23:31:33.19 ID:r6aZV9ch(3/3)調 AAS
あまり大声で言うべきではないでしょうが、LazarusのGTK3サポート、
まだアルファ版というのがちょっと切ない。
自分の作るしょっぱいアプリだったらFreePascalのGTK3バインディングで
十分だろうからそっちから攻めるべきか。
888: 2020/12/23(水) 15:41:35.78 ID:lutaimDh(1/2)調 AAS
ざっくり調べるとQtバインディングの方はQt6が最新でQt5はサポートしているということか。
であれば現状自分のしょっぱいLinuxアプリはQt5バインディングにしといた方が
良いかもしんないにゃー。
別にGTK2でも全く問題ないのですが・・・・
889: 2020/12/23(水) 16:37:45.86 ID:lutaimDh(2/2)調 AAS
しかしGTK4が出てGTK2はEOLになった訳だが、ソースは公開されてるから永遠に使えるし、
別に自分の作るしょっぱいアプリなら見栄えとかも気にならない。
そりゃPython2が消えるのに時間かかるわけですわ。
890: 2020/12/25(金) 22:27:48.26 ID:ri6ukwlu(1)調 AAS
とりあえずlazbuildでlpiファイルを指定してやればコマンドラインでビルド出来るのが
わかった。
これで素直にemacsでのコーディングにチャレンジできますな。
891: 2021/01/04(月) 00:32:46.18 ID:UbmKQSc4(1)調 AAS
Lazarusからブランチされたと思しきCodeTyphon。
公式サイト見る限り、LazarusよりIDE環境は進んでそう。
外部リンク:www.pilotlogic.com
892: 2021/01/04(月) 08:44:40.23 ID:yz1hRW6c(1)調 AAS
Lazarusはシングルウインドウになったらええのに
893: 2021/01/19(火) 14:59:49.28 ID:yIqZdVPk(1/2)調 AAS
FAQ見るとシングルウィンドウにするんだー、だからペインドッキングのパッチは
ノーセンキューなんて書いてあるのにねー。

GTK3サポート共々今どんな塩梅なんですかね。
894: 2021/01/19(火) 20:51:23.69 ID:yIqZdVPk(2/2)調 AAS
何を思ったかデスクトップPCをDebian/Linuxに、エディタはemacsでコーディングをしてる。
emacsのデフォルトはgnu-pascalサポートが入ってるのでObjectPascal拡張があると不便。
よくわからんまま、emacs delphi.elで検索かけてgithubにあるopacal.elを入れて
M-x opascal.elとしてみたら普通に動くようです。

そうまでしてなんでemacsで書かねばならんのかわからんのですが・・・
895: 2021/02/27(土) 11:50:38.32 ID:/3KARqRa(1)調 AAS
Lazarus Release 2.0.12 - February 24, 2021, 09:03:56 pm
896: 2021/02/28(日) 23:10:14.65 ID:mKlp/j+j(1)調 AAS
あ、もう出てたんですね。
リリースノート見る限りバグフィックスが主体であんまし新機能はなさ気な雰囲気ですが
使ってみた方いかがでしょうか。
897: 2021/03/09(火) 15:37:27.70 ID:l78vZ82J(1)調 AAS
windows10 で lazarus 2.0.12 を利用していますが、以下のようなコードの2か所で修飾子エラーになります
{MODE Delphi} なら大丈夫なのですが {$mode objfpc} の場合、どのように変更すればよろしいのでしょうか

type
PPHashItem = ^PHashItem;
PHashItem = ^THashItem;
THashItem = record
Next: PHashItem;
Key: string;
Value: Integer;
end;
TStringHash = class
private
Buckets: array of PHashItem;
protected
function Find(const Key: string): PPHashItem;
end;

function TStringHash.Find(const Key: string): PPHashItem;
var
Hash: Integer;
begin
Hash := HashOf(Key) mod Cardinal(Length(Buckets));
Result := @Buckets[Hash];
while Result^ <> nil do
begin
if Result^.Key = Key then <--- この部分が修飾子エラー
Exit
else
Result := @Result^.Next; <--- この部分も修飾子エラー
end;
end;
898
(1): 2021/03/09(火) 18:54:46.70 ID:rOOOnHPb(1)調 AAS
Result^ を Result^^ にすればいいんじゃね?
899: 2021/03/09(火) 20:18:39.79 ID:MhdCCkF1(1)調 AAS
>>898
上手く行きました
ありがとうございました
900: 2021/05/22(土) 19:39:35.52 ID:WqI2sMHS(1)調 AAS
3.2.2リリースage
901: 2021/05/22(土) 22:29:54.34 ID:PvGX7Iml(1)調 AAS
まだ開発続いとったんかい
902: 2021/10/26(火) 21:43:41.35 ID:8mnatHSz(1)調 AAS
Delphiのライセンス切れてるし、Community Editionは毎回新バージョンに更新しないといけないから
これを機にFreePascalにしてみるか
貧弱なIDEはVSCodeで補えそうだし
903: 2022/01/08(土) 18:10:12.68 ID:+pfXixh3(1)調 AAS
Lazarus Release 2.2.0 - January 05, 2022, 11:57:19 pm
904
(1): 2022/05/15(日) 19:08:49.28 ID:/ysfaPE8(1)調 AAS
program MyProgram(input, output);
のようにプログラム名にパラメーターが付いたコードを見かけました。
Pascalの方言なのでしょうか?
それともFree Pascalでも見られるものでしょうか?
905: 2022/05/22(日) 12:24:51.68 ID:Z7pvlCmg(1/2)調 AAS
>>904
質問に質問で返してすみませんが、あなたは

void int main( int argc, char *argc[])
はcの方言だと思いますか?
それともGNUCでも見られるものでしょうか
906
(1): 2022/05/22(日) 13:54:17.54 ID:AZNH+fge(1)調 AAS
void int mainってコンパイルエラーでは?
907: 2022/05/22(日) 22:03:25.27 ID:Z7pvlCmg(2/2)調 AAS
>>906
しまった(苦笑
908: 2022/05/24(火) 12:07:51.00 ID:/3mhcllS(1)調 AAS
Lazarus Release 2.2.2 - May 19, 2022, 09:26:08 am
909: 2022/05/26(木) 19:00:16.04 ID:9mlaCQEY(1)調 AAS
本家のForum にレジストしても確認メールが届きません。
どうしたものでしょうか。
迷惑メールとかも見ましたし再送信とかも試しましたががまったく来ません。
910: 2022/05/26(木) 19:36:53.93 ID:MuCsRUFl(1)調 AAS
抵抗されてるのかもね
911: 2022/09/30(金) 02:46:22.20 ID:NV97RnvW(1)調 AAS
Lazarus Release 2.2.4 - September 28, 2022, 10:08:10 am
912: 2022/10/04(火) 15:58:36.29 ID:i5Up1tp0(1)調 AAS
Windowsアプリの速度は改善したの?
913
(1): 2022/10/18(火) 09:21:39.14 ID:muJtZzp1(1)調 AAS
Lazarus製のアプリケーションのexeのショートカットをつくって実行時の
大きさを最小化としても最小化で起動しないのだがどうすればいいのかな
914
(1): 2022/10/19(水) 00:06:57.42 ID:imuHRl6B(1)調 AAS
>>913
Delphi ではプロジェクトファイルをごにょごにょしてたので
Lazarus では多分 .lpr ファイルにごにょごにょ

Application.CreateForm(TForm1, Form1);
//ここに↓これを入れて判断
if CmdShow = SW_MINIMIZE then Application.Minimize;
Application.Run;
915: 2022/10/19(水) 09:56:54.13 ID:ozKA7OU5(1)調 AAS
>>914
あいにく動作しませんでした

メインフォームのOnCreateイベントハンドラーに
case CmdShow of
SW_SHOWMINNOACTIVE: WindowState := wsMinimized;
SW_SHOWMAXIMIZED: WindowState := wsMaximized;
end;
と書いたらうまくいきました
916
(1): 2022/10/20(木) 08:50:49.47 ID:rL6ktv6z(1)調 AAS
AmazonにKindle本として佐々木優という人が書いたLazurus・Free Pascalのセルフ出版の
本が何冊かのっている(読み放題のKindle Unlimited対象)
役に立つかどうかは別にして日本語の本というのはめずらしいかも
917: 2022/10/20(木) 10:06:08.31 ID:7LO4Bhg7(1)調 AAS
>>916
応援の意味で何冊か買いました。Unlimited もいつ対象外になるかわからんし。
918: 2022/10/22(土) 14:34:30.76 ID:4hbuG1Ym(1)調 AAS
UbuntuでC++Builderを導入できなかったのでDelphiの本読んで勉強してます。

思い通りに動くと楽しいです。
919
(1): 2022/11/15(火) 14:25:03.73 ID:ktesV7KK(1)調 AAS
サンプルの xmlstreaming を参考にして設定を書き出す処理を作ってます。
TComponent を継承して設定データのクラスを作ろうとしているんだけど、
その中にさらに TComponent 派生クラスを入れ子にすると、その項目が書き出されない。
入れ子のクラスを TPersistent 派生にすると書き出されるんだけど、項目名が
ドットで区切られた形でかなり違和感。
xmlstreaming の中でコメントアウトされている Form (Self) を書き出す処理を有効にしてみると、
入れ子のデータは「children」タグに囲われていい感じで出力されているんだけど、
どうやればできるんでしょうか?
920: 2022/11/15(火) 19:22:03.37 ID:hFwj798Q(1/2)調 AAS
>>919
下記を付け加えると入れ子のデータも書き出された
読み込みが正常に行われるかは検証してない

procedure TMyComponent.GetChildren(Proc: TGetChildProc; Root: TComponent); //override;
var
i: Integer;
begin
if Self = Root then begin
for i:=0 to ComponentCount-1 do begin
Proc(Components[i]);
end;
end;
end;
921
(1): 2022/11/15(火) 21:41:42.06 ID:hFwj798Q(2/2)調 AAS
Rootってなんだろう?と思って書いてたコードが入ってた

procedure TMyComponent.GetChildren(Proc: TGetChildProc; Root: TComponent); //override;
var
i: Integer;
begin
for i:=0 to ComponentCount-1 do begin
Proc(Components[i]);
end;
end;
922: 2022/11/15(火) 22:24:52.25 ID:1BrVYPVp(1)調 AAS
>>921
ありがとうございます。書き出せました。
wiki のストリーミングのところ読んでもそんなこと書いてなかったけどな。
TWinControl に実装されてるから Form ならちゃんと書き出されたんですな。
人をハメようとしてるとしか思えないな。検索しても、英語の情報でも全然ないし。
とにかく、ありがとうございました。
923: 2022/12/14(水) 20:13:02.80 ID:WtdZKbBc(1)調 AAS
これは壮観。過去50年以上にわたる「プログラミング言語の人気の変遷」をアニメで紹介するムービー【やじうまWatch】 - INTERNET Watch
外部リンク[html]:internet.watch.impress.co.jp

pascalって人気あったんだね
924: 2022/12/31(土) 11:06:52.98 ID:J7CUMtxq(1)調 AAS
インクリメンタルサーチの候補表示に TListBox を使っていて、
候補数が一定以下の場合は、数に合わせて ListBox の高さを調節したいと思っています。

Windows の場合は ItemHeight を使えばうまくいくようなのですが、Linux だと 0 が返ってきて
使えません。ほかにも ItemRect(0).Height の値も 0 ではないけど全然足りないし、
フォントの高さから計算できるかと思ったけど、同じ高さでもフォントが違うと
ListBox の項目の高さが微妙に違ったりしてこれもダメっぽい。

描画しているんだからどこかに情報があるんだと思うんですが、どこにあるんでしょう?
そもそもアプローチが間違っている?
925
(1): 2023/01/07(土) 18:23:08.22 ID:rN0cn1Ph(1)調 AAS
TOpenDialogのTitleプロパティがデフォルトの「ファイルを開く」のままOpenDialog1.Executeを実行すると、表示されたダイアログのキャプションが"Open existing file"と英語で表示されてしまいます。

これはLCLStrConstsユニットで rsfdOpenFile = 'Open existing file'; と定義されているのが原因のようですが、これをlclstrconsts.ja.poの「ファイルを開く」に置き換える方法を教えてください。
926
(1): 2023/01/09(月) 20:44:35.21 ID:uyXkOmJj(1)調 AAS
>>925
プロパティの設定が効かないってことかな?
927
(1): 2023/01/10(火) 09:05:22.16 ID:GH/EYK1c(1/2)調 AAS
>>926
オブジェクトインスペクタでTitleを「画像ファイルを開く」など「ファイルを開く」以外にすればTitleがダイアログのキャプションに反映されます。
また、コードでOpenDialog1.Title := 'ファイルを開く'; を実行すればキャプションもそうなります。
ただ、コードを書かずにオブジェクトインスペクタで「ファイルを開く」を設定するだけだと「Open existing file」が表示されるというのが今回の問題です。

この症状はTDBNavigatorでも確認できていて、Hintsプロパティにはデフォルトで日本語のヒントが設定されているのにもかかわらず、実行すると英語のヒントが表示されてしまします。
その他MessageDlgのボタンが「はい」「いいえ」ではなく「Yes」「No」なのも同じ原因だと思います。
928
(1): 2023/01/10(火) 18:40:29.37 ID:ddgJg6qa(1)調 AAS
>>927
IDEの言語を日本語にしていると、TOpenDialogのTitleプロパティを「ファイルを開く」に設定してもデフォルトとみなされ設定ファイルに記録されず
アプリを国際化対応させてないと元のデフォルトである 'Open existing file' が表示されるみたい
したがって
解決法1
IDEの言語を日本語以外にして Titleプロパティを「ファイルを開く」に設定する
他のダイアログなどでも設定しないとならなかったり、根本解決ではない

解決法2
国際化対応(のふり):
1.どこかの uses節に DefaultTranslator を追加し、
2.実行ファイルがあるフォルダに languagesフォルダを作り、その中に lclstrconsts.ja.po をコピーする
でいいはずなんだけど、Windowsだと FCLの gettextユニットに日本語の言語コードを jp とする不具合があるので、次のように修正する
3.gettextユニットにある procedure GetLanguageIDs(var Lang, FallbackLang: string) の中の
 LOCALE_SABBREVLANGNAME を LOCALE_SISO639LANGNAME に
 LOCALE_SABBREVCTRYNAME を LOCALE_SISO3166CTRYNAME に書き換える
あとは gettextユニットをプロジェクトに追加してコンパイルするだけでいいはず
(gettextユニットを修正せずにファイル名を lclstrconsts.ja.po から lclstrconsts.jp.po にするだけでもいいけど)

gettextユニットの不具合のせいで国際化対応をどうやってもできなくて無駄に悩んだぞ
IDEの言語設定で Automaticで日本語にならないのも gettextユニットの不具合のせいじゃないのかなあ
929: 2023/01/10(火) 19:51:57.80 ID:GH/EYK1c(2/2)調 AAS
>>928
ありがとうございます。
lclstrconsts.jp.poにリネームする方法で試して無事日本語で表示されました。
TDBNavigatorのヒントとMessageDlgのボタンも同様です。
930: 2023/03/13(月) 17:17:11.04 ID:0W6r0BpQ(1)調 AAS
Lazarus Release 2.2.6 - March 09, 2023, 10:38:09 am
931: 2023/03/17(金) 15:14:21.65 ID:O04jxkPS(1)調 AAS
軽くていいな。ゲームエンジンなんかもあるようで欧州では使い手多いのか?
932: 2023/04/29(土) 13:16:43.69 ID:SIZVO/Fn(1)調 AAS
外部リンク:www.tiobe.com

TIOBE Indexで常に10位前後を維持してるDelphi系のPascal言語もスゴいよな
信じがたい快挙
933
(2): 2023/05/05(金) 03:07:31.72 ID:PeDEzH1k(1)調 AAS
Windowsアプリを作ったら、とても遅いような気がするんだけど、まだ改善してないのかな?
934: 2023/05/07(日) 13:41:00.25 ID:eh+8xa5M(1)調 AAS
>>933
どんなプログラムを書いてどの言語と比較して遅いのかを書かないと答えは無理
C++/C言語と同等の速度にはならない
スクリプト言語よりは高速
935: 2023/05/07(日) 15:52:40.36 ID:FtrFphzu(1)調 AAS
>>933
他のプログラムはサクサク動くのにお前の作ったプログラムだけが遅いという場合は、
多分お前のプログラムの何かがおかしい。
936: 2023/07/12(水) 06:19:48.60 ID:I6ZMSQN0(1)調 AAS
Lazarus Release Candidate 1 of 3.0 - July 03, 2023, 02:10:30 pm
937
(1): 2023/07/15(土) 21:28:05.69 ID:2FiMr/gw(1)調 AAS
なんか知らんけど山下って人に金払わんでも専ブラ作っていいみたくなったらしいから
Lazarusでなんか作るチャンスなんじゃねw
938: 2023/10/21(土) 16:11:17.35 ID:G+lHRKF1(1/2)調 AAS
Lazarus Release Candidate 2 of 3.0 - October 16, 2023, 11:19:47 am

The Lazarus team is glad to announce the second release candidate of Lazarus 3.0.
This release was built with FPC 3.2.2.
939: 2023/10/21(土) 16:11:26.42 ID:G+lHRKF1(2/2)調 AAS
Lazarus Release Candidate 2 of 3.0 - October 16, 2023, 11:19:47 am

The Lazarus team is glad to announce the second release candidate of Lazarus 3.0.
This release was built with FPC 3.2.2.
940: 2023/12/24(日) 07:32:34.78 ID:1m+l9U5n(1)調 AAS
Lazarus Release 3.0 - December 21, 2023, 05:13:29 pm
The Lazarus team is glad to announce the release of Lazarus 3.0.
This release was built with FPC 3.2.2.
941: 2023/12/24(日) 12:29:21.36 ID:CLUuqAoM(1)調 AAS
>>937
Siki 以上のものをサクッと作れる気がしねー……
942: 2024/02/09(金) 17:03:32.99 ID:LEmbefGZ(1)調 AAS
元となったPascalの開発者が失踪したそうです
943: 2024/02/11(日) 15:58:19.39 ID:8Y1XXxgX(1)調 AAS
マジっすか
944: 2024/02/13(火) 17:18:01.13 ID:kntdml6t(1)調 AAS
↑誤訳
945: 2024/02/14(水) 17:08:51.66 ID:S7FsWUpF(1)調 AAS
Pascal言語の作者が亡くなった話?
946: 2024/02/14(水) 18:24:17.69 ID:vFlu/nl/(1)調 AAS
N. Wirth 死去 2024/1/1 89歳.R.I.P.

失踪じゃないよ.逝去だよ.
1-
あと 25 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 1.287s*