教えてください。
Windows10のエクスプローラーで表示の最近詳細表示画面でフォルダ内を見るとアイコンが「今日() ,今週に入って(機能は含めず)
という横線でアイコンが分断表示されるようになり、これはエクスプローラーの
表示→グループ化→なし で無効化できましたが、
我がDelphi6 のWebbrowserで作成したエクスプローラは、この横棒を消せません。
なにか方法がありましたら教えて頂きたいです。
しかしMicrosoftはなんでこんなことをするんですか理解できないです。
フォルダ内のアイコンが順番に並んでいるのが当たり前だと思うのですが。
Delphiの問題ではなくWindowsの問題のように思いますが
まずエクスプローラーに関してはダウンロードフォルダが頻繁にグループ表示に戻ります
Microsoftが推奨してるのかな?
そして設定でグループ化無効にもできますがこのフォルダ設定は5,000箇所?まで対応なので
それ以降はグループ表示を解除できません
レジストリを触れば増やせます
さて問題のWebbrowserでグループ化解除ですが
他のブラウザで解除してもブラウザ毎にグループ化の設定を覚えているのでグループ化の設定が引き継がれません
そしてWebbrowserはグループ化を想定していないのでその設定のON/OFFが出来ません
レジストリにもその設定項目が見つかりません
Webbrowserでどのような操作を行っているのかがわかりませんが
代替方法があれば移行も考えないと行けないかも
Windows10 Delphi11
WebBrowser1.Navigate('C:\'); で表示したやつだよね?
ポップアップメニューの グループで表示(P) の中に なし(N) が あるけど?
かなり強引にできないことはないみたいですが、強引すぎますよね。
uses shlobj;
procedure TForm1.Button1Click(Sender: TObject);
var pw:PWideChar;
path:string;
begin
getmem(pw,1024);
try
ZeroMemory(pw,1024);
SHGetSpecialFolderPath(handle,pw,CSIDL_PROFILE,false);
path:=pw;
finally
freemem(pw);
end;
WebBrowser1.Navigate(path+'\Downloads');
end;
procedure TForm1.WebBrowser1DocumentComplete(ASender: TObject;
const pDisp: IDispatch; const URL: OleVariant);
var p:TPoint;
i:Integer;
begin
p:=WebBrowser1.ClientToScreen(Point(0,0));
SetCursorPos(p.X+1,p.Y+80);
mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);
mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0);
keybd_event(ord('V'), 0, 0, 0);
keybd_event(ord('V'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(ord('D'), 0, 0, 0);
keybd_event(ord('D'), 0, KEYEVENTF_KEYUP, 0);
mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);
mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0);
keybd_event(ord('P'), 0, 0, 0);
keybd_event(ord('P'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(ord('N'), 0, 0, 0);
keybd_event(ord('N'), 0, KEYEVENTF_KEYUP, 0);
end;
ツイート | ![]() |