掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
TOpenDialog(TSaveDialog)上にある各コントロールのIDは不変でしょうか (ID:148952)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
アプリ,プログラム,コンポーネント,あるいはそれらで使用しているコントロールの仕様が, 「不変」で「絶対」である保証は一般的にはありません. String 型の変数のコードページは Delphi 2007 までは「不変」でした. それは AnsiString 型 (日本ではコードページ 932) の文字列でした. Delphi 2009 では UTF-16 になりました. Indy というコンポーネントは,バージョンによってイベントの引数の形式が変わることがあります. Windows Vista では管理者権限での実行の仕様が変わりました. Windows 8 では Windows のバージョン取得用の関数の仕様が変更されました. こういうことを書き出すときりがありません. 原発は絶対安全 (不変) と電力会社が言い続けていました. 実際には大変な事故が発生しました.想定外の津波が原因だそうです. コントロールの ID 値も同じです. それらの ID の値を設定した人 (マイクロソフトのプログラマでしょう) は,それらの ID の値を, 基本的には変更するつもりもないし,変更もしたくないでしょう.多分. ID の値を変えてしまうと,それらの値を使用したプログラムも変更しなければなりません. しかし,ダイアログの仕様変更の関係で変更することがあるかも知れません. それこそ想定外のことが発生するかも知れません. km さんのいう「環境」が何を意味するのかは不明ですが, Windows のバージョンであるとすれば,ID の値の設定方法が, Windows のバージョン依存でなければ問題ないと思われます ( これも絶対とは言い切れません) それでも,おそらく,多くのプログラマは実際に自分で確認して使用していると思われます. 私もそうです. > WindowsSDKで定義されているIDですので現状のWindows環境であれば同じ値であることが期待出来ると思います。 というレスがあるように,ほとんどのプログラマは, たとえ不変という保証がなくても,「暗黙の了解事項」として受け入れて利用しているわけです. au さんのレスも「期待」となっています. 「暗黙の了解」なんてとんでもない !! 不変かどうかハッキリしろ !!,というのであれば, コントロールの ID を設定 (決めた) 人を探し出して問いただすしかありません. そんなこと訊かれても困るとは思いますが.もちろん掲示板等で訊かれても困ってしまいます. 不変とは言い切れないし,不定とも言えません.かと言って使えないとも言えません.
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.