Einzelnen Beitrag anzeigen

FarAndBeyond
(Gast)

n/a Beiträge
 
#10

AW: Zwei Windows Explorer starten und nebeneinander bildschirmfüllend positionieren

  Alt 27. Jun 2015, 05:46
Hi,
hier noch eine ganz einfache Möglichkeit ohne Sleep. Diese hat bis jetzt unter Windows 7 immer funktioniert.
Zwei einfache Schritte:

(1)
Man schreibt den Pfad zu der aus diesem Quellcode compilierten EXE ins Feld "Ziel" eines QuickLaunch Icons.

Delphi-Quellcode:
Unit ShowTwoWindowsExplorer;

Interface

 Uses
  Windows, Messages, SysUtils, Classes, Controls, Forms, ShellApi;


 Type
  TForm1 = Class(TForm)
    Procedure FormCreate(Sender: TObject);
    Procedure FormActivate(Sender: TObject);
    Procedure FormShow(Sender: TObject);

   Private

   End;

 Var
  Form1: TForm1;

Implementation
 {$R *.dfm}

Procedure TForm1.FormCreate(Sender: TObject);
 Begin
  Try
   Form1.Height := 1;
   Form1.Width := 1;
   Form1.Top := 0;
   Form1.Left := 0;
   Form1.AlphaBlend := True;
   Form1.AlphaBlendValue := 0;

   If DirectoryExists('I:\')
   Then
    Begin
     ShellExecute(Form1.Handle, Nil, PChar('I:\MARTIN'), Nil, Nil, SW_SHOW);
     ShellExecute(Form1.Handle, Nil, PChar('I:\MARTIN\(DOWNLOADS)'), Nil, Nil, SW_SHOW);
    End
   Else
    Begin
     ShellExecute(Form1.Handle, Nil, PChar('C:\'), Nil, Nil, SW_SHOW);
     ShellExecute(Form1.Handle, Nil, PChar('D:\'), Nil, Nil, SW_SHOW);
    End;
  Except
   Exit;
  End;
 End;


Procedure TForm1.FormShow(Sender: TObject);
   Var Owner: HWND;
 Begin
  Try
   Owner := GetWindow(Form1.Handle, GW_OWNER);
   ShowWindow(Owner, SW_HIDE);
  Except
   Exit;
  End;
 End;


Procedure TForm1.FormActivate(Sender: TObject);
 Begin
  Try
   Close;
  Except
   FreeAndNil(Form1);
   Exit;
  End;
 End;

End.
(2)
Man klickt auf das Explorer Icon und startet damit die EXE.
Von den beiden sich öffnenden Explorer-Fenstern schiebt man eins nach ganz rechts und eins nach ganz links, so dass diese sich automatisch bilschirmfüllend positionieren.
Jetzt verkleinert man beide Fenster gleichweit per Maus am oberen Rand um 1 oder 2 Pixel. Der untere Rand wird dabei von Windows 7 automatisch verkleinert.
Sollten beide nicht exakt nebeneinander erscheinen, dann einfach das tiefere Fenster an der Titelleiste nach oben verschieben.
Jetzt schließt man beide Fenster.

Das war's auch schon...

Für alle, die
- Windows 7 verwenden
- einen 21 oder 24 Zoll oder noch größeren Bildschirm benutzen
- per einfachem Klick zwei unterschiedliche Ordner angezeigt haben wollen mit Dateiansicht Detail und Bildvorschau
- die Position der Explorer-Fenster nur selten verändern
- sich nicht an den unteren fehlenden 4 Pixeln stören

Der Windows Explorer versucht ja mit aller Kraft seine letzte Position immer wieder einzunehmen und ob man das in der Registry deaktivieren kann oder auf Default Werte setzen kann, kann ich im Moment noch nicht sagen...

Da ich den Explorer ohne Verzeichnisbaum benutze und die Position eigentlich niemals verändere ist das die für mich schnellste und beste Möglichkeit bis jetzt...
Alle anderen wie QDir, SpeedCommander, DoubleCommander, TotalCommander, FreeCommander und Co. starten zu langsam um mal eben schnell was auch immer zu tun...
Zudem zeigt von denen keiner eine DETAILS-Ansicht und eine Bildvorschau.
Außerdem kann man sich natürlich auch zwei QuickLaunch Icons erstellen. Einmal ein Fenster und einmal zwei nebeneinander. Mit 4 Fenstern hab' ich das noch nicht probiert... grins

Gruß
Martin
  Mit Zitat antworten Zitat