【问题标题】:Writing to the Windows 7 "preview" window area写入 Windows 7“预览”窗口区域
【发布时间】:2010-09-04 02:00:20
【问题描述】:

如何使用 C# 将控件写入或绘制到 Windows 7 预览区域?例如,在 Windows 7 中打开 Windows Media Player 并播放一首歌曲。在播放歌曲时,最小化 Windows Media Player,然后将鼠标悬停在 Windows Media Player 图标上,您将在实际 Media Player 预览窗口下方看到一个暂停、倒带和快进按钮。如何在 C# 中复制这种行为?

【问题讨论】:

    标签: c# windows-7 preview aero


    【解决方案1】:

    您正在寻找Windows 7 Thumbnail Toolbars:

    缩略图工具栏提供了一个迷你 “远程控制”的机会 从其缩略图窗口。为了 例如,切换到下一首歌曲 不需要的 Windows Media Player 使用笨拙的媒体播放器桌带 或切换到媒体播放器 应用。相反,您可以使用 缩略图工具栏直接执行 这个任务,不会打断你的 通过跳到另一个工作流程 应用。

    无耻地抄自那篇 MSDN 文章:

    //In your window procedure:
    switch (msg) {
        case g_wmTBC://TaskbarButtonCreated
            THUMBBUTTON buttons[2];
            buttons[0].dwMask = THB_ICON|THB_TOOLTIP|THB_FLAGS;
            buttons[0].iId = 0;
            buttons[0].hIcon = GetIconForButton(0);
            wcscpy(buttons[0].szTip, L"Tooltip 1");
            buttons[0].dwFlags = THBF_ENABLED;
            buttons[1].dwMask = THB_ICON|THB_TOOLTIP|THB_FLAGS;
            buttons[1].iId = 1;
            buttons[1].hIcon = GetIconForButton(1);
            wcscpy(buttons[0].szTip, L"Tooltip 2");
            buttons[1].dwFlags = THBF_ENABLED;
            VERIFY(ptl->ThumbBarAddButtons(hWnd, 2,buttons));
            break;
        case WM_COMMAND:
            if (HIWORD(wParam) == THBN_CLICKED)
            {
                if (LOWORD(wParam) == 0)
                    MessageBox(L"Button 0 clicked", ...);
                if (LOWORD(wParam) == 1)
                    MessageBox(L"Button 1 clicked", ...);
            }
            break;
    }
    

    【讨论】:

      【解决方案2】:

      由于它有 C# 标记,我猜您想在托管代码中执行此操作。查看Windows API Code Pack,其中包括实时缩略图、缩略图按钮、剪辑缩略图、选项卡式缩略图等示例。您正在寻找的是缩略图按钮,只需两三行代码即可完成。

      顺便说一句,预览区域是您在 Windows 资源管理器中选择 .txt 文件时获得的内容,并且可以看到右侧的内容。大多数办公文件都有预览器,您也可以自己编写。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-07-05
        • 1970-01-01
        • 1970-01-01
        • 2012-04-22
        • 2023-03-12
        • 2011-12-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多