【问题标题】:Delphi - TCameraComponent won't find flashDelphi - TCameraComponent 找不到闪存
【发布时间】:2016-08-29 23:17:13
【问题描述】:

我正在使用 Delphi 10.0 Seattle,并尝试在运行 Windows 10 Pro 的 Lenovo Thinkpad 平板电脑上使用后置摄像头的灯。我正在使用TCameraComponent

我尝试使用来自FMX.MediaCameraComponent.TorchMode := TTorchMode.ModeOn,但它引发了一个异常,提示该设备没有手电筒。

有人知道为什么会发生这种情况,是否有某种方法可以访问此灯/闪光灯?

【问题讨论】:

  • 您使用的是哪个版本的 Delphi?
  • 你先检查TCameraComponent.HasTorch了吗?这将停止异常。你确定你的平板电脑有一个手电筒而不仅仅是一个闪光灯吗?他们不是一回事。 HasFlashFlashMode 有不同的属性。 (我知道为什么手机会有手电筒(这样你就可以像手电筒一样使用它),但我不明白为什么 Thinkpad 大小的平板电脑(笔记本电脑)会有手电筒。)你的平板电脑有联想实用程序可以转动吗在火炬上?
  • 我刚刚检查了 Delphi 10.0 Seattle 中的 FMX 源代码,它没有在 Windows 上实现 Flash 或 Torch 功能根本。它仅在 OSX、iOS 和 Android 上实现。
  • FlashMode 效果不佳,我没有在其中寻找类似手电筒的应用程序。
  • 嗯,是的。就像我说的,FMX 没有在 Windows 上实现 Flash 或 Torch。您将不得不求助于使用特定于 Windows 的 API 来访问任何操作系统级别的灯光/手电筒功能。 .NET 中有相应的 API,因此希望也有相应的 Win32 API。

标签: delphi delphi-10-seattle tablet-pc


【解决方案1】:

Delphi 10.0 Seattle 中的 FMX 在 Windows 上根本没有实现 Flash 或 Torch 功能。它仅在 OSX、iOS 和 Android 上实现。

您将不得不求助于使用特定于 Windows 的 API,甚至是特定于制造商的 API 来访问灯光/手电筒功能。例如,Windows UWP API 中有FlashControlTorchControl 类。

【讨论】:

    猜你喜欢
    • 2014-10-02
    • 2017-08-28
    • 2018-08-11
    • 2014-07-09
    • 2012-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-17
    相关资源
    最近更新 更多