くだすれDelphi(超初心者用)その59【Embarcadero】
レス数が1000を超えています。これ以上書き込みはできません。
Delphi(デルファイ)について、他のスレッドでは書き込めない超低レベル、もしくは
質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
Delphi使いが優しくコメントを返しますが、お礼はDelphiの布教と初心者の救済をお願いします。
■ Delphi 11
http://www.embarcadero.com/jp/products/delphi
■ Delphi Community Edition (無料)
iOS、Android、Windows、macOS 向けアプリも開発可能。年間売上5000 US$以内の商用開発可。
https://www.embarcadero.com/jp/products/delphi/starter
<前スレ>
くだすれDelphi(超初心者用)その58【Embarcadero】
https://mevius.5ch.net/test/read.cgi/tech/1583919039/
■ 便所の落書きレベルの個人的な悪口やきつい言葉(氏ねとか)は禁止だからな。
■ Embarcaderoヲッチャ的な内容も歓迎だ。
■ 誰も立てないから立てた。さあ語れ。 c++は昔はしんどかったけど、着実にパワーアップして
async、awaitに対応したmodern c++のほうがもう開発しやすい >>950
どういう意味で言ってるのか分からないけど
何でもイベント駆動ってのはちょっと
例えばちょっとTTimer使おうとしても
OnTimerプロシージャ作るのって面倒
ローカル関数の中で
TTimer.Create(Interval,
procedure (var Repeat: boolean)
Repeat := DoSomething(...)
);
とか出来たら便利かも >>953
と書いたけど
これはイベントを直接デストラクタの引数にしただけか 開発にほんと金のかからなそうな機能しか追加しねぇ
くそゴミ製品極まれりって感じだな >>956
エディタ依存じゃない?(タブならタブ、スペースならスペースが入ったまま)
ただバグのもとになりそうで使うの怖いっていいたいけど
Delphi10でうちはエンバカとは手を切ったから使えないけど 再現方法がいまいち不明だけど、for i := 0 って書くとローカル変数宣言に
i : integer;があるにも関わらずi : TObject;が自動で追加されてエラー吐く事があるんだがおま環?
変数宣言に児童追加ってオプションあったっけ?
バージョンは11.3 >>959
for の i を ctrl + クリックするとどこへ連れてかれる? >>960
不定期に出るから次出たときにちょっと確認してみる >>960
元々あった方の
i : integer;
に飛んだ
うーん、自動追加された方の宣言を消せば良いだけではあるんだけど突然現象が発生したらイラっとするなぁ 使ってる人教えて
Delphi11 CEのTEdgeBrowserにはOnKeyDownイベントある? ちょっと教えて
'0'から'9'の数字をUnicodeの数学用特殊文字 $1D7EC から $1D7F5 に変換したいとき
var Ch='1';
var C := Chr($1D7EC + Ord(Ch) - 48);
とかはダメですよね。3バイトのUnicode文字を生成するにはどうしたら?
ちなみに $1D7EC から $1D7F5 を文字列配列定数にしておいて
そこから選んで、例えばMemoに表示するのは問題なくできてます
https://i.imgur.com/4w7mJUy.jpg そこまで範囲が広くないならその文字の配列でも作ってChを数値に変換してインデックスにでも指定すればいいんじゃ Unicode文字コードからUTF16エレメントへの変換くらいCharでできなくても
SysUtilsにない?と思ったけど見つからないな
関数書いてみたけどレスしようとしたらブロックされた >>968
本当?と思って確かめたけどサロゲートペアはCharと同じで無理でしょ レスありがとう
いろいろ探したり試行したりしたらUCS4Stringで可能だった
var St: UCS4String;
SetLength(St, Length(Text) + 1);
i := 0;
for var Ch: Char in Text do begin
if Ch in ['0'..'9'] then
St[i] := UCS4Char(Ord(Ch) - 48 + $1D7EC);
...
Inc(i);
end;
St[i] := 0;
result := UCS4StringToUnicodeString(St);
とか
ただHelpには書かれてなかったけど
UCS4Stringはnullで終端させる必要があるのかなぁ?
少なくともUCS4StringToUnicodeStringで最後の文字が無視される レスありがとう
いろいろ探したり試行したりしたらUCS4Stringで可能だった
var St: UCS4String;
SetLength(St, Length(Text) + 1);
i := 0;
for var Ch: Char in Text do begin
if Ch in ['0'..'9'] then
St[i] := UCS4Char(Ord(Ch) - 48 + $1D7EC);
...
Inc(i);
end;
St[i] := 0;
result := UCS4StringToUnicodeString(St);
とか
ただHelpには書かれてなかったけど
UCS4Stringはnullで終端させる必要があるのかなぁ?
少なくともUCS4StringToUnicodeStringで最後の文字が無視される Pascal文字列以外の文字列型はnull末端のために内部的には文字列長+1文字分確保されるけど、
UCS4Stringは文字列型ではなく動的配列なのでnull末端分を配慮してくれない なるほど
UCS4StringToUnicodeStringのコード見て理解した
ていうか、そこに出てるサロゲートペア文字の文字コードを
2個のWideCharに変換する式だけ抜き出して使えば
UCS4Stringは使う必要がないことに気づいた
emojiを文字コードで処理するときに使えそう 正しかっただろうと言われてもWideCharというヒントだけじゃ分からないよ
function CharCodeToString(Code: DWord): string;
begin
if Code >= $10000 then
result := WideChar((((Code - $00010000) shr 10) and $000003FF) or $D800) +
WideChar(((Code - $00010000) and $000003FF)or $DC00)
else
result := WideChar(Code);
end;
var S := CharCodeToString($1F44D); // 👍 つーかそのソースのWideCharをCharに書き換えても動くはずで
>>976はただの恥の上塗り D6使ってます。
ListView の ViewStyle := vsReport (MultSelect := True) で質問です。
上下用のボタンをそれぞれ配置して1押しで1行入れ替わるというのなら見つけられたのですが
↓こんなのとか
https://forum.lazarus.freepascal.org/index.php?topic=37638.0
Item行が複数ある内の1行(又は複数行)をマウスの左押しSelectedドラッグのでマウス移動のドロップで任意の行に移動挿入させる
分りやすそうなTipsサンプルソースはどこかにありませんか? メンテ続くのか心配になるような寂しすぎる数字だな
CnWizards 1.2.8.1150 Installer (160 times) >>980
ありがとうございます。
参照してみます Delphi12が出たな
とは言えCE使いの自分は早くて1年後か
アイコンジェネレータ(だっけ?)あれはすぐにでも欲しい DelphiはプログラミングAIとは無縁だと思ってたけど
Bingでちょっと検索しようとしたら勝手に回答が得られた
内容はメモのキャレット位置に文字を入力
https://i.imgur.com/o62pxWE.png
単に検索した内容をそれっぽく表示しただけだろうけど Delphi の所 .net に変えても似たようなもんだったけど AIにDelphiのちょっと難しい事聞くとありもしない関数でっちあげて、さも動くような回答してくるぞ Delphi12のヘルプ、Sample Codeとして外部リンクしているやつのURLがおかしいね
TXMLDocumentSaveToFileを例にとると、リンク先が
http://docwiki.embarcadero.com/codeExamples/Yukon/en/TXMLDocumentSaveToFile_(Delphi)
となっててNot Foundになる
Yukon を Athensに書き換えると表示される 円馬鹿のヘルプは表示されても全然意味ねーヘルプだもんなあ
まったく使い物にならないと思う Delphi3ぐらいまでのヘルプはムチャクチャ良かったんだぜ、その頃はMSのヘルプも良かった(ただの思い出話) OpenAIとマイクロソフトの件でアンダースヘルスバーグの事を思い出した ■ 誰も立てないから立てた。さあ語れ。
くだすれDelphi(超初心者用)その60【Embarcadero】
https://mevius.5ch.net/test/read.cgi/tech/1700737330/l50
間違ってる部分や過去に改善部分の指摘があったのなら
1へのアンカー付けて変更部分含めた全文を次回立てる人向け用で分かるように
2以降に申し送り用として貼っておいてください。 このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 793日 1時間 39分 12秒 5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。
▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/
▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login レス数が1000を超えています。これ以上書き込みはできません。