Delphi

Delphi は Turbo Pascal から発展した(?) Windows アプリケーションの開発ツール。

Borland, Inprise, CodeGear などブランドの変遷を経て、現在は エンバカデロ の製品。

ブックマーク http://www.delicious.com/nishimotz/delphi

プロジェクト kikiwwl

過去のブログ記事

製品情報

Windowsプログラミング逆引きクロス大辞典
佐納 康治 曽我部 雄樹
秀和システム
売り上げランキング: 482272
おすすめ度の平均: 5.0
5 こんな辞書を待っていました

C++Builder

since 2015-02-25

How to make your Delphi applications more accessible

NVDA で操作できるアプリを作る方法を調べてみる。

以下、C++Builder XE7 のインストーラーで英語を選んでインストールした場合。

FMX でも VCL アプリケーションではなく Others の中の「SDI Application」を選ぶと、わりとアクセシブルなアプリのテンプレートとして使える。

TLabel はオブジェクトナビゲーションで操作できないので、TStaticText を使うこと。

VCL の Hint プロパティはステータスバーに表示されるが、MSAA の accName などには反映されない。

フォームは右クリック View as Text して DFM ファイルを見ると、オブジェクトナビゲーションに対応したオブジェクト構造を見ることができる。

なぜか一番上に書いたものがオブジェクトナビゲーションでは後ろに配置されるので、逆順に並べなくてはならない。

TMemo にフォーカスを移動すると、キャレットがある行だけが通知されるらしい。

2行目以降や空行にキャレットがある状態で、いったん Tab して Shift+Tab で戻ってくると非常に違和感がある。

OnEnter イベントハンドラにこんなことを書いて、キャレットを先頭にむりやり戻してみる。。

void __fastcall TSDIAppForm::Memo1Enter(TObject *Sender)
{
	Memo1->SelStart = Memo1->Perform(EM_LINEINDEX, 0, 0);
}

delphi.txt · 最終更新: 2015/02/25 19:07 by Takuya Nishimoto
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0