问题标签 [juce]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
user-interface - addMouseListener 在 juce::TreeView 上不起作用
我从JUCE的官方论坛没有得到任何答复,我试图在这里提问并希望。
这是我的问题:
我想将 mouseDoubleClick 事件注册/挂钩到 juce::TreeView 类或其派生。
上面的代码不起作用,JUCE 创建者也没有回答。我的问题是如何使它工作?应该可以用简单的例子来解释。addMouseListener() 会不一致,应该记录在案,例如“addMouseListener 将无法在某些类上工作,例如 TreeView”。我很乐意在文档中找到它并避免使用以前的技术。
xcode - 在 XCode 中将库添加到构建和链接路径
我正在尝试在 MAC OSX 上使用 JUCE 框架构建一个 GUI 应用程序。我已经下载了所有的 API,并得到了一个运行良好的小型 hello World 程序。
但是,当我将文件添加到我的 Xcode 项目时,我收到编译错误,提示 Juce 库文件不存在。我想知道如何在 XCode 的构建和链接路径中获取库 API,以便它找到编译所需的文件。
我会在 Visual Studio 上执行属性并添加额外的库依赖项,这是我需要在 XCode 中执行的操作,但我不知道如何操作。非常感谢任何帮助。
谢谢。
c++ - 在 Juce 库中拦截 FileBrowserComponent 上的鼠标事件
我最近开始使用Juce 库。我通常在其论坛上发布与 Juce 相关的问题,但我一直在为一个问题苦苦挣扎,但我仍然没有收到任何答案。所以 stackoveflow 确实值得一试,即使这里似乎没有很多 Juce 的用户。
这是问题:
我正在用 Juce 的组件做一些实验。我有以下课程:
本课程的目的是:
存储组件层次结构的单个组件(子)
拦截与孩子或其后代之一相关的所有鼠标事件
- 做一点事
- 最终将 MouseEvent 转发到它被定向到的组件
我尝试了将滑块组件作为子组件的此类,甚至嵌套在其他组件中……一切正常。现在我正在用 FileBrowserComponent 做一些实验,它似乎不能正常工作。例如,当我单击按钮移动到向上的目录时,它不会(按钮接收到鼠标事件并被单击,但树视图中没有任何反应)。从列表中选择项目也不起作用。
可能是什么问题呢?(我做了一些实验,似乎 FileBrowserComponent 中的方法 buttonClicked 没有被调用,但我不知道为什么)有什么建议吗?
我也尝试以这种方式修改代码:
它仍然不起作用。无论如何,我发现如果我评论对 setInterceptMouseClicks 的第二次调用(我在之后禁用鼠标单击)会使事情正常工作(即使这不是我想要获得的结果,因为我需要重新禁用鼠标事件零件)。
这些事实可以使我想到两个考虑:
- 即使手动将鼠标事件传递给它的 mouseDown 方法,组件也需要拦截鼠标点击(这是真的吗?我不太确定)
- 在 FileBrowserComponent 中处理鼠标事件之后,还有其他类使用其拦截鼠标单击状态的信息,否则如果在 target->mouseDown(newEvent) 之后,它会起作用,我将再次禁用鼠标单击。任何想法?
提前致谢
c++ - 用于在代码库中提取硬编码字符串的 Lua 模式匹配
我正在使用 C++ 代码库。现在我正在使用调用 lua 脚本的 C++ 代码来查看整个代码库,并希望返回程序中使用的所有字符串的列表。
有问题的字符串前面总是有一个名为 TRANS 的 JUCE 宏。以下是一些应该提取字符串的示例
而且我相信您可以想象在大型代码库中可能出现的其他一些可能的字符串变体。我正在制作一个自动工具来生成 JUCE 翻译格式的文件,以尽可能地自动化该过程
就目前而言,为了找到这些字符串,我已经做到了模式匹配。我已将源代码转换为 lua 字符串
并打电话给
找到以 TRANS 开头的模式,具有平衡括号。这将为我提供完整的宏,包括括号,但从那里我认为很容易拆分我不需要的脂肪并保留实际的字符串值。
但是,这不适用于导致括号不平衡的字符串。例如TRANS(")")
将返回TRANS(")
,而不是TRANS("(")
我将我的模式修改为
其中,模式应以 TRANS 开头,然后是 0 或多个空格。然后它应该有一个 ( 字符后跟零个或多个空格。现在我们在括号内,我们应该有平衡数量的 "" 标记,然后是另一个 0 或多个空格,最后以 a 结尾。不幸的是,这在使用时不会返回单个值。但是......我认为即使它像我预期的那样工作......也可能有一个\"
内部,这会导致支架不平衡。
关于提取这些字符串的任何建议?我应该继续尝试找到模式匹配序列吗?还是我应该尝试直接算法...你知道为什么我的第二个模式没有返回字符串吗?任何其他建议!我不想涵盖所有可能性的 100%,但接近 100% 会很棒。谢谢!:D
c++ - 如何避免在 Juce Framework 和 OpenCV 之间出现干扰命名空间问题?
我使用 introjucer 和 Xcode4 创建了一个 Juce Audio-Plugin 项目。一切正常,直到我添加#include <cv.h>
到我的代码中。
我在 OpenCV 文件中遇到 317 个问题:core.hpp、operations.hpp、mat.hpp、imgproc.hpp、features2d.hpp、objdetect.hpp'juce::Point' is not a type
以及其他一些命名空间错误......
我试图设置#include <cv.h>
以上所有其他包括及以下...
有人有想法吗?
c++ - 在 Lion 上以 32 位在 Xcode4.1 上编译 OpenCV 和 Juce 问题
我正在尝试用 32 位的 Xcode4.1 编译我的 VST 插件。我正在使用 Juce 框架并在其中集成了 OpenCV 2.2。我用自制软件和这个命令安装了 OpenCV:
但是当我在 32 位中使用 Xcode4.1 编译项目时,我会收到以下错误:
在我的构建设置中,我定义了标题和库搜索路径。
但它没有编译成功。我希望有一个人可以帮助我?
c++ - C++ GUI 开发 - 位图与矢量图形 CPU 使用率
我目前正在为一些用 C++ 制作的音频应用程序(使用 Juce 框架)设计和开发 GUI。
到目前为止,我一直在使用位图图形来创建自定义滑块和转盘,通过使用“胶片条”样式的图像来为组件设置动画(这意味着当用户与滑块交互时,它会触发一种改变胶片偏移量的方法-strip 图像以更改组件外观)。根据原始图像的大小和“帧”的数量,CPU 使用水平会发生很大变化。
首先,就 CPU 消耗而言,最有效的位图文件格式是什么?目前我正在使用PNG图像。
其次,对这些图形组件使用矢量图会更有效吗?我了解位图和矢量图形之间的主要区别,但我没有找到任何关于它们在 GUI 交互方面的 CPU 使用级别的信息。
还是 CPU 使用率取决于所使用的特定方法/函数/库/框架?
谢谢!
c++ - VST 主机 - 泄漏的对象 - Juce/C++
我是一名 PHP 程序员,在构建 VST 主机时学习 C++。我可能咬得比我能咀嚼的多,但我正在取得一些进展(我认为)!
我在 Visual Studio 2010 中使用 Steinberg VST SDK 和 JUCE 库。我遇到了泄漏的对象错误,我不太了解在搜索收到的错误时找到的解决方案。
这是“输出”选项卡中的错误。我的程序吐出 JUCE Assetion 错误:
我被带到 juce_amalgamated.h 文件中的这条消息:
这是我认为错误所指的代码:
也许我正在接近这种语法更像是 PHP?我不太明白什么是 RAII 技术。
任何让我朝着正确方向前进的提示都值得赞赏。
qt - 将 OpenCV 与更大的程序集成
任何人都可以推荐一个操作指南或简要概述将 OpenCV 与更大的基于 GUI 的程序集成所涉及的内容吗?流行的方法是什么?
特别是,在不使用 HighGUI 的情况下使用OpenCV 处理视频,同时进行视频捕获/预览似乎特别神秘。我希望有人可以揭开这个神秘面纱。
我的特定配置是使用 Juce 或 Qt,具体取决于可以做什么。跨平台的事情并不重要——如果在 Windows 中有一种很棒的方法可以做到这一点,我可能会相信。社区支持的可用性很重要。
我听说 HighGUI 完全是为了测试,不适合实际应用。有人推荐了VideoInput库,但它是实验性的。
答案的关键点:
- 使用 Qt(因为 Qt 很棒并且有一个很大的社区)。
- 打开一个新线程以循环运行 cv::VideoCapture 并
emit
在帧捕获后发出信号。使用 Qt 的msleep
机制,而不是 OpenCV。所以,我们仍然使用 OpenCV highgui 进行捕获。 将 cv::Mat 转换为 QtImage:
QImage qtFrame(cvFrame.data, cvFrame.size().width, cvFrame.size().height, cvFrame.step, QImage::Format_RGB888);
qtFrame = qtFrame.rgbSwapped();
可选:使用 GLWidget 渲染。使用 Qt 内置方法将 QtImage 转换为 GLFormat:
m_GLFrame = QGLWidget::convertToGLFormat(frame);
this->updateGL();
c++ - 如何将 TIFF 图像数据传递给 JUCE(不支持 TIFF)?
我正在使用 c++ JUCE 库学习 gui 编程。该库支持图像文件格式(png,jpg)。但我想了解如何使用其他文件格式,例如 tiff。
谷歌后我得到了libtiff。
我的问题是显示这个的准确方法是什么。我是否需要将 .tiff 文件从 tiff 转换为 jpeg/png 才能执行此操作。
但我认为这将需要双重处理。
任何人都可以解释原始/原生/基本图像文件格式,以便我需要将所有图像转换为该类型并直接使用它。
当我在 winAPI 中找到一些用于处理图像的东西时,它们使用来自文件格式的图像数据。
如果有人可以让我知道处理图像数据和显示它的方法,那将非常有帮助。