XPスタイルにするとステータスバーが動作しません

解決


Tom  2007-05-26 20:55:20  No: 26285

Turbo Delphiを使っています。
XPmanifestファイルを使ったときや、コンポーネントのTXPManifestを使ったときなど、XPスタイル適用するとステータスバーが使えなくなります。

XPスタイルでなければ、きちんと動作します。
これはバグなのでしょうか?


ホント?  2007-05-26 21:21:34  No: 26286

ステータスバーのぷろぱてぃの設定し忘れが無いか、もう一度確認してみたら?


Tom  2007-05-26 22:50:28  No: 26287

一度、TXPManifestをおいた状態とそうでない状態で確かめました。
TXPManifestをおいたかそうでないか以外はまったく同じ条件で試したので、
XPスタイル以外に原因が考えられないと思います


そんでなぐて...  2007-05-27 00:35:39  No: 26288

>これはバグなのでしょうか?
汝等努努疑うこと勿れ、
まず己の至らなさを疑え。


igy  2007-05-27 01:56:46  No: 26289

新規プロジェクトで、
・TStatusBar, TXPManifestをフォームに追加
・ヒント表示テスト用にTButton、TApplicationEventsも追加

// ヒント表示
procedure TForm1.ApplicationEvents1Hint(Sender: TObject);
begin
    with StatusBar1 do
    begin
        if SimplePanel then
            SimpleText := Application.Hint
        else
            Panels[0].Text := Application.Hint;
    end;
end;

// OnCreate
procedure TForm1.FormCreate(Sender: TObject);
begin
    Button1.Hint := '短いヒント|長いヒント';
    StatusBar1.SimplePanel := True;
end;

このようなコードを書き、StatusBar1のSimplePanel プロパティがtrue, falseのとき、
いずれもXPスタイル適用して、正しくヒント表示するのを確認しました。
(BDS2006)

>ステータスバーが動作しません
>ステータスバーが使えなくなります

とは、どのように動作しないのですか?


経験  2007-05-27 02:19:06  No: 26290

by山口百恵
…ダレでも一度だけ…するのよ♪ ……罠〜♪…

igyさんの例では問題なし。

問題は、SimplePanelぷろぱてぃの設定(デフォルトではFalse)を変更するのを忘れて、
StatusBar1.SimpleText := 'ほにゃ';
とやってしまうこと。
このコードでは、SimplePanelがFalseでも XPスタイルを適用しなければ、問題無く表示される。
(ホントはチョット問題あるんだけど…)
そして、XPスタイルを適用すると、ナニも表示されなくなる。
コノ現象は、Delphi6でも起きる。
(デフォルトで SimplePanelが Falseなのも問題を起こす原因かな…)
コノ失敗は誰でも一度は経験する?


Tom  2007-05-27 07:37:26  No: 26291

経験さんのレスで解決いたしました。
ありがとうございました


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加