喫茶XRAYトップページ


[13256] 久しぶりに返信 削除
2020/3/15 (日) 11:39:48 Mr.XRAY
久しぶりに登場しましたね.

https://www.petitmonte.com/bbs/answers?question_id=29705

>「計算」というボタンを押して、
>0の個数は自信がありません。
>読み取り違反というのがヒントですかね??


相変らずです.
「読み取り違反というのがヒントですかね??」
この表現の態度がたまりません.ゾクッときます.


-------  宇宙人の会話 --------

宇宙人 A
「計算というボタンをクリックすると例外が発生するんだよな」

宇宙人 B
「それはね.計算がいけないんだよ.
ボタンの名前を印刷に変えてごらん」

宇宙人 A
「でもコンピュータって,計算する道具ぢゃないの ?」

宇宙人 B
「コンピュータも最近は計算に疲れているんだよ
相手のことも考えてあげないとね」


※ (注) 皆さんは宇宙人の言葉が理解できないと思いますので,私が翻訳しました.
    翻訳にミスがあるかも知れません.

おまけ.振付を一生懸命練習したことがある貴方へ
https://www.youtube.com/watch?v=HKI3a4KdIPo


[13257] Re:久しぶりに返信 削除
2020/3/15 (日) 13:35:35 Mr.XRAY
> >「計算」というボタンを押して、

この場合は Caption の値でしょう
で,ボタンの Caption は関係ない,と思った方,甘い !!
私の体験によると,caption の値で処理を分岐する方もいます.

> >0の個数は自信がありません。

彼にとっては単なる記号ですが,
これは例外が発生したメモリのアドレスを 16 進数で表した値です.念のため.
32 ビットの EXE のメモリ空間は 32 ビットです.
ということは,16 進数では ? 桁,ということです.
0 の数の問題ではありません.と言うか,

>1.エラーメッセージをそのまま貼り付けてください(ダイアログでCtrl+Cでコピーできます)

というレスがあるんですけど,そういうのを無視するのも昔から同じですね.


[13264] Re2:久しぶりに返信 削除
2020/3/19 (木) 15:35:54 おかぽん
▼ Mr.XRAYさん
> 私の体験によると,caption の値で処理を分岐する方もいます.
身近にいましたw

10数年前、退職するからと(誰も引き取り手のいない)ソースを(無理矢理)
引き継ぎさせられた中にありました。
しかも[ 印  刷 ]とか、スペースつきのcaptionで、処理分岐。
ちょっと可視性悪いなと、途中の空白を減らそうものなら、アクセス違反に
なるという、目玉が飛び出て、落ちた目玉を探さないといけなくなるくらいの
素敵極まりないソースでした。
動かないならともかく、なぜアクセス違反???


[13265] Caption名による処理の分岐返信 削除
2020/3/20 (金) 15:51:21 Mr.XRAY
▼ おかぽんさん

> 動かないならともかく、なぜアクセス違反???

ハハハッ.そういうこともあるのてしょう.
Caption の話は質問のメールで送られてきたコードにあったんですが,
その時は,特にそのことには触れませんでした.
実は,掲載サンプルでも使用しているのがあるんですが.
実務では避けた方が無難たと思います.

ボタンクリックイベント内でしたらボタンの Name プロパティが使用可能ですが,
それ以外では,処理に定数を割り振るという方法もありますよね.
列挙型で定義してしまうとか.

Caption は,GUI の部分ですから,開発途中で変更したいこともありますし.
[印刷] から [印 刷] とか.


[13258] 子フォームの自動生成と実行時生成返信 削除
2020/3/15 (日) 20:05:26 Mr.XRAY
> https://www.petitmonte.com/bbs/answers?question_id=29705

既にレスがあるので敢て書く必要はないかも知れませんが,

(1) Delphi 6 で作成した複数のフォームを使用するプロジェクトがある.
    ボタンクリックで別のフォーム (子フォーム) を表示するコードある
(2) Delphi XXX で新規にプロジェクトを作成し,あるフォルダに保存
(3) Delphi 6 で作成した子フォームのファイル類をそのフォルダにコピー
(4) コンパイルして,子フォームを表示するボタンをクリック
    質問に書いてある例外が発生した.

つまり,Delphi 6 で作成した子フォームは自動生成.
新しく作成したプロジェクトに,その子フォームは追加していない.
したがって,実行時に生成しなければ例外発生.
ということでしょう.

こうやって手順を書けば一目瞭然.
何か,何と言うか,つまらん.


[13260] Re:子フォームの自動生成と実行時生成返信 削除
2020/3/16 (月) 15:32:39 Mr.XRAY
> こうやって手順を書けば一目瞭然.

もちろん,質問する時はコードが必要です.
でないと,実行時に生成しているかいないの判断ができません.

ちなみに,既存のフォームを自動生成にするには,
[プロジェクト] [プロジェクトに追加] でフォームのユニットを追加します.
新規にフォームを作成する場合は [ファイル] [新規作成] です.

その他は,難解な記事でずが,以下を参考に

[ 122_複数のフォームを使用するプロジェクト ( 入門者用 )  ]
http://mrxray.on.coocan.jp/Delphi/plSamples/122_PluralForms.htm

※ ここまで書いておけば,バシリみたいな方がいるようなのでレスするかも.
※ レスしても無視されるかも知れませんが.ホホホッ
※ リンクを貼っても記事を読みませんからね,


[13261] Re:久しぶりに返信 削除
2020/3/16 (月) 16:55:40 taki
▼ Mr.XRAYさん
> 久しぶりに登場しましたね.
>
> https://www.petitmonte.com/bbs/answers?question_id=29705
>


姪の子どもがまだ覚えていないひらがなをすっとばして読む絵本みたいですね。

まあ、私も読めない漢字がときどきあるのであまり言えませんが…。


[13262] Re2:久しぶりに返信 削除
2020/3/16 (月) 17:19:50 Mr.XRAY
▼ takiさん

> 姪の子どもがまだ覚えていないひらがなをすっとばして読む絵本みたいですね。

うまい表現ですね.
他の方に伝えるという要素が欠落しています.
その気もないのかも知れませんが.
過去の書き込みから思うに,質問と言うより,自分自身のメモですね.


[13263] Re3:久しぶりに返信 削除
2020/3/18 (水) 11:22:16 Mr.XRAY
FUKUSHI さんのレスの後に反応がないと思ったら,解決済みになっているんですね.
いつもながら尻切れトンボのような・・・


INCM/CMT
Cyclamen v3.82