问题标签 [fltk]

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.

0 投票
1 回答
3620 浏览

c++ - FLTK 1.3 链接错误

我将我的 FLTK 从 1.1 更新到 1.3,然后我无法编译在更新之前运行良好的代码。

这是我的 CMakeLists.txt

我试图在我的 CMakeLists.txt 中添加一些库,但它不起作用。谁能告诉我是什么问题?

0 投票
1 回答
1428 浏览

c++ - 在这种情况下如何在 Eclipse 上链接库?

我有一个 c++ 项目可以使用 cmake 很好地编译。

但是当我去eclipse时,出现了一些问题。

在eclipse中,我进入project->properties->c/c++ build->settings->tool settings->GCC C++ linker->libraries,然后在“Libraries(-l)”中添加jpeg、Xft和fontconfig,并添加/usr/lib/x86_64-linux-gnu 在“库搜索路径 (-L)”中。但这是行不通的。

这是我的 CMakeLists.txt,它在 cmake 中运行良好。

我正在和喜欢 eclipse 的教授一起工作,所以我需要让它在 eclipse 中工作。我在配置中错过了什么?

0 投票
3 回答
800 浏览

c++ - 不显示控制台的跨平台进入功能

我正在使用跨平台 GUI 库 (FLTK) 来制作一些 GUI,我没有使用 Win32 API。我希望这个程序可以在 Windows、Linux 和 Mac OS 上运行。

我真的不明白跨平台的 mumbo jumbo 是如何工作的(看看我的帐户名),但我认为理解跨平台意味着什么。但这不是我的问题。

我的问题是我现在的入口函数只是int main(),但是当我使用这个入口函数时,控制台就弹出来了。我不想要任何控制台,所以我知道我可以像这样使我的输入功能:

并且不会有控制台。

我担心的是,因为我必须使用 Win32 API 才能拥有这个 wWinMain 入口函数(因为 HINSTANCE 和 LPWSTR),所以该程序将不再与其他操作系统兼容。

所以我的问题是,如果我使用 wWinMain 函数,我的程序能否在 Mac 和 Linux 操作系统上运行?如果没有,是否有一个我可以使用的功能不创建控制台并且可以在所有操作系统上运行?

最后,也许我完全幻想能够在任何操作系统上运行相同的 .exe 程序,这实际上是不可能的。是这样吗?

0 投票
1 回答
534 浏览

c++ - FLTK 事件映射/多线程

我是 FLTK 和 C++ 的新手。我需要一些关于如何让活动正常工作的帮助。在其他语言中,您创建一个按钮并定义一个函数,当用户单击它时,该函数将在不同的函数中处理来自 button1 和 button2 的事件。就像向 button1 添加事件监听器并将其映射到 button1_click()。

这是来自多线程环境的一些代码。我想知道如何监听来自 button1 和 button2 的点击并正确处理它们。

此外,通过这种设计,我计划在循环中每 200 毫秒在 GUI 上拥有一个单独的线程更新数据。如果我在这个循环中调用 lock 和 unlock,是否有可能引发异常?

谢谢!!

0 投票
1 回答
173 浏览

c++ - C++ FLTK 休息组件

例如,我有 5 个选择组件

这是一个多步骤过程的一部分。在流程结束时,我想重置所有组件,以便用户可以再次执行此操作。我有困难。创建widgit时,文本为空白,用户需要为其选择一些东西来调用回调。很明显,用户需要在其中单击并选择一个值。

我希望用这段代码“重置它”:

不起作用,当我再次显示widgit时只选择第一个值。

我尝试了这个凌乱的代码只是想到达某个地方:

即使完全重新创建widgit也不起作用。该widgit根本不会重新出现在窗口上......

帮助!有任何想法吗?

谢谢!!

0 投票
2 回答
2148 浏览

c++ - LNK2019 在 QtCreator 中使用 WinMain 时

我正在 QtCreator 中制作一个 FLTK GUI。请不要因为我没有使用 Qt 来制作我的 GUI 而生我的气,这无关紧要。

无论如何,我的项目类型是“Plain C++ Project”,这是我的代码(你可能不需要阅读它,但我把它放在那里以防万一):

当我运行此程序时,我收到此警告和两个错误(抱歉,小图像,如果您看不懂,请放大浏览器):

在此处输入图像描述

我知道 LNK2019 错误是什么,事实上它们可能是我存在的祸根。但在这种情况下,我不知道为什么会得到这个。我认为你也应该看看这个,这是我的 Qt 项目 .pro 文件的文本:

模板 = 应用程序配置 += 控制台配置 -= app_bundle 配置 -= qt

win32: LIBS += -luser32 -lshell32 -lgdi32 -lole32 -ladvapi32

来源 += main.cpp

unix|win32: LIBS += -L$$PWD/../../../Desktop/C++/FLTK/lib/ -lfltk

INCLUDEPATH += $$PWD/../../../Desktop/C++/FLTK/include DEPENDPATH += $$PWD/../../../Desktop/C++/FLTK/include

这可能是最重要的部分:我从来没有遇到任何错误,当我使用 int main() 作为我的主函数时,程序运行良好。

所以,我的问题是为什么我会得到这个,我该如何解决?

0 投票
3 回答
1827 浏览

c++ - 如何在 C++ 中循环创建形状并将其附加到窗口?

我制作了一个程序,它接受一系列命令,例如 square 150 160 在窗口中绘制一些形状。我想为任意数量的命令执行此操作。所以,我使用一个循环来做到这一点。问题是当创建形状并将它们附加到窗口的命令处于循环中时,最后窗口没有内容,例如没有附加任何内容。我认为这可能会发生,因为在循环内创建形状的调用会在其块(范围)结束后被销毁。

我该如何克服这个问题?

这是我的代码:

0 投票
3 回答
1415 浏览

c++ - 编译 Fast Light Toolkit (FLTK) 2.0 以与 fastHOG 一起使用

我正在尝试在我的 Ubuntu 12.04 计算机上建立一个名为fastHOG的定向梯度直方图库。当我尝试编译现成的 fastHOG 代码时,编译器抱怨它找不到。根据Rahul Ashok 关于 fastHOG 的教程,我需要安装Fast Light Toolkit (FLTK) 2.0。该教程说 2.0 以外的 FLTK 版本不起作用。fltk/run.h

所以,我正在尝试编译 FLTK 2.0 ( svn co http://svn.easysw.com/public/fltk/fltk/trunk fltk-2.0)。当我makefltk-2.0文件夹中执行此操作时,会收到类似undefined reference to 'FcInit'.

关于如何让 FLTK 2.0 正确编译的任何建议?

这是我在 Ubuntu 12.04 上使用 g++ 4.6.3 构建 FLTK 2.0 时得到的完整错误打印输出:

0 投票
1 回答
617 浏览

c - 如何解决 OpenCV libjpeg 和 fltkjpeg 之间的库冲突?

问题是,我必须链接一个名为 fltkjpeg.lib 的库才能读取 *.jpg 格式。但我的应用程序还需要与 OpenCV libjpeg.lib 库链接。当我链接 fltkjpeg 库时,OpenCV jpeg 库不起作用。当我链接 OpenCV jpeg 时,FLTK jpeg 不会读取 jpeg 图像。

我怎样才能消除这个冲突?

顺便问一下,如何将 OpenCV 图像数据设置为 FLTK 图像数据?目前我像这样使用 Fl_Shared_Image::get(filepath);

谢谢。

0 投票
1 回答
3104 浏览

c++ - force FLTK to redraw without event Handles

I'm using Fltk to render openGL graphs. currently I'm debugging a global array which is sorted by a heapsort function. My purpose is to see after each swap of elements in the heapsort function a graphical swap of elements. but I don't want to catch an event from FLTK event_handle for every time i need to redraw after I swapped and waiting at breakpoint. (the heapsort function and the opengl render part are running in 2 different threads (if that doesn't has to go without saying)). So the first try I had was to use:

But every Time the callback is called the 2nd time i get an "Access violation reading"

I'm suggesting that FL::run starts a different thread so maybe the first time is still in same thread so the address of redraw is still usable but after that I'm in a different thread and the function at address is not that what I'm expecting?!

But I already took a different way because I wasn't sure i cant even use the timeout on this way. So i was looking for a way to get an event that's eq to "set amount of time passed" or "nothing is happening for..." but there isn't such a handle I'm right?

Finally is there a way to let FLTK execute commands even outside the eventloop? or is there another way to solve my problem?