Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to enter Windows Flip 3D mode on Windows Vista and above?

Is it possible to trigger the Flip 3D mode on Windows Vista above systems programmatically?

enter image description here

It is the same as if you manually press CTRL + WIN + TAB

like image 728
TLama Avatar asked Nov 24 '11 11:11

TLama


People also ask

How do I open Flip 3D?

A feature of the earlier Aero interface in Windows that displayed the desktop and open apps in 3D. Pressing Windows key + Tab key invoked Flip 3D, and continually pressing Windows-Tab rotated the windows from back to front.

What is the shortcut for 3D Flip View?

drag the 3D view with the CTRL key held down. In shaded views only, you can rotate about the viewer position (as opposed to rotating about the view centre) by holding down the ALT key (as well as the CTRL key) whilst dragging. use the rotate buttons . Hold the SHIFT key down to reverse the direction of rotation.

How do you access the Flip feature in windows?

Keyboard shortcuts to flip your screen in WindowsCTRL + ALT + Up Arrow for landscape. CTRL + ALT + Right Arrow for portrait. CTRL + ALT + Down Arrow for reverse-landscape. CTRL + ALT + Left Arrow for reverse-portrait.


1 Answers

The Shell object has the WindowSwitcher method which can invoke this mode.

Here is the Delphi code example:

uses
  ComObj;

procedure EnterWindowSwitcherMode;
var
  Shell: OleVariant;
begin
  try
    Shell := CreateOleObject('Shell.Application');
    Shell.WindowSwitcher;
  finally
    Shell := Unassigned;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if Win32MajorVersion >= 6 then // are we at least on Windows Vista ?
  begin
    try
      EnterWindowSwitcherMode;
    except
      on E: Exception do
        ShowMessage(E.ClassName + ': ' + E.Message);
    end;
  end;
end;


Update:

Or as Norbert Willhelm mentioned here, there is also IShellDispatch5 object interface which in fact introduces the WindowSwitcher method. So here's another version of the same...

The following piece of code requires the Shell32_TLB.pas unit, which you can in Delphi create this way (note, that you must have at least Windows Vista where the IShellDispatch5 interface was used the first time):

  • go to menu Component / Import Component
  • continue with selected Import a Type Library
  • select Microsoft Shell Controls And Automation and finish the wizard

And the code:

uses
  Shell32_TLB;

procedure EnterWindowSwitcherMode;
var
  // on Windows Vista and Windows 7 (at this time :)
  // is Shell declared as IShellDispatch5 object interface
  AShell: Shell;
begin
  try
    AShell := CoShell.Create;
    AShell.WindowSwitcher;
  finally
    AShell := nil;
  end;
end;
like image 155
TLama Avatar answered Sep 20 '22 08:09

TLama