ScnLib_SelectCaptureRegion()

ScnLib_SelectCaptureRegionA/W()

标准版专业版超级版至尊版
C++ __declspec(dllimport) BOOL __stdcall ScnLib_SelectCaptureRegionA(long *left, long *top, long *right, long *bottom, HWND *pHWND, LPCSTR pcszTip);
__declspec(dllimport) BOOL __stdcall ScnLib_SelectCaptureRegionW(long *left, long *top, long *right, long *bottom, HWND *pHWND, LPCWSTR pcwszTip);
C# [DllImport("ScnLib.dll", CharSet = CharSet.Unicode)] public static extern bool ScnLib_SelectCaptureRegionW(ref int left, ref int top, ref int right, ref int bottom, ref IntPtr Wnd, string Tip);
Basic Public Declare Unicode Function ScnLib_SelectCaptureRegionW Lib "ScnLib.dll" (ByRef left As Int32, ByRef top As Int32, ByRef right As Int32, ByRef bottom As Int32, ByRef Wnd As IntPtr, ByVal Tip As String) As Boolean
Delphi function ScnLib_SelectCaptureRegionA(var left: Integer; var top: Integer; var right: Integer; var bottom: Integer; var Wnd: THandle; const Tip: PAnsiChar): LongBool; stdcall; external 'ScnLib.dll';
function ScnLib_SelectCaptureRegionW(var left: Integer; var top: Integer; var right: Integer; var bottom: Integer; var Wnd: THandle; const Tip: PWideChar): LongBool; stdcall; external 'ScnLib.dll';
  • 描述
    提供一个内置的屏幕区域选择工具,让用户选择屏幕上的特定窗口或矩形区域。

  • 参数
    • left [out]
      表示所选矩形区域左上角的x坐标,以像素为单位。
    • top [out]
      表示所选矩形区域左上角的y坐标,以像素为单位。
    • right [out]
      表示所选矩形区域右下角的x坐标,以像素为单位。
    • bottom [out]
      表示所选矩形区域右下角的y坐标,以像素为单位。
    • Wnd [out]
      如果用户点击了一个窗口,则返回所选窗口的句柄。然而,如果用户通过按住并拖动鼠标左键形成矩形来选择了任意区域,则会设置零值。
    • Tip [in]
      在高亮窗口区域的角落显示一个提示,让用户知道可以点击选择光标下的窗口,或者拖动鼠标选择自定义区域。
    • 所选矩形区域不包括矩形的右侧和底部边缘。
  • 返回值
    如果成功选择了一个窗口或矩形区域,返回值为TRUE。如果用户取消了选择,返回值为FALSE。

  • 备注
    在屏幕录制时,用户通常更喜欢录制特定窗口或矩形区域。为此,您可以提供一个界面,方便用户轻松选择屏幕区域。如果您不想开发这样的界面,可以调用此函数访问SDK的内置区域选择工具。

    调用此函数后,桌面会变暗,鼠标光标下的窗口将被突出显示。要选择一个窗口,将光标移到它上面并点击鼠标左键。要选择自定义的矩形区域,请将光标定位到目标区域的左上角,按住鼠标左键,拖到右下角,释放鼠标左键以完成选择。在多显示器系统上,如果选择过程中按住CTRL键将限制选择坐标到鼠标光标所在的显示器的屏幕区域内。

    选择过程中,可以通过右击鼠标或按ESC随时取消。屏幕上会出现一个放大镜工具,帮助进行精确选择。所选矩形区域的坐标可以传递给ScnLib_SetCaptureRegion()来设置录制区域,或传递给ScnLib_TakeScreenshotA/W()来截屏。如果选择了一个窗口,您可以将其句柄传递给ScnLib_SetCaptureWnd()来绑定捕获窗口。

  • 参见
    ScnLib_SetCaptureWnd()
    ScnLib_SetCaptureRegion()
    ScnLib_GetCaptureRegion()
    ScnLib_ShowCaptureRegionFrame()
    ScnLib_GetCaptureRegionFrameWnd()
    ScnLib_TakeScreenshotA/W()

下载 SDK API 总览