ポップアップメニューの項目選択クリックをコードで実行するには?

解決


武田  2008-04-13 03:12:51  No: 30484

よろしくお願いします。WindXP、Delphi6 Personalです。
フォームにTWebBrowserを貼り付けてWebBrowser1.Navigate('フォルダフルパス');を実行すると
直下のフォルダやファイルをデフォルトでサムネイル表示しますが
画面を右クリックメニューの「表示」で「一覧」や「詳細」を選択するとその表示になります。
これを、Navigateのとき、あるいはButtonでコードにより一覧や詳細表示させる手段がありましたら教えてくださいませんか。
プロパティを探しても判りませんでした。
よろしくお願いいたします。


もにゃ  2008-04-13 21:23:27  No: 30485

Vista,D7で動作確認しました。
ListViewスタイルは下記以外も存在すると思います。
いろいろ、調べてみてください。
動かなかったらご一報ください。

//TWebBrowser上のフォルダアイコンスタイルの変更
//参考
//デスクトップ上のアイコンの並び方の変更
//http://www.occn.zaq.ne.jp/maekawa/delphitip/index.html#c029
procedure TForm1.Button3Click(Sender: TObject);
var
 h : HWND ;
 GWLSTYLE : Longint;
 LVS : Word;
begin
{//usesの下に書くと楽
const
  LVS_ICON                = $0000;
  LVS_REPORT              = $0001;
  LVS_SMALLICON           = $0002;
  LVS_LIST                = $0003;
  LVS_TYPEMASK            = $0003;
}
  LVS:= $0003; //LVS_LIST;
  h := FindWindowEx(WebBrowser1.Handle , 0, 'SHELLDLL_DefView', nil);
  h := FindWindowEx(h, 0, 'SysListView32', nil);
  GWLSTYLE := GetWindowLong(h,GWL_STYLE);
  GWLSTYLE := GWLSTYLE and (not LVS_TYPEMASK);
  GWLSTYLE := GWLSTYLE or LVS ;
  SetWindowLong(h,GWL_STYLE,GWLSTYLE );
end;


武田  2008-04-14 21:02:41  No: 30486

もにゃ様誠にありがとうございました。
うまく解決できました。
レスが付かないのであきらめていました。
実際は、TWebBrowserではなくTEmbeddedWBを私は使用していますが
EmbeddedWBでも完動しました。
感謝いたします。
では。


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

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






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