fltk 相关问题

FLTK(发音为“fulltick”)是用于UNIX / Linux(X11),Microsoft Windows和Mac OS X的跨平台C ++ GUI工具包。

如何在 C++ FLTK 中处理同时向左和向右拖动

我正在使用FLTK 1.3.3,在实现Fl_Widget::Handle()函数时,我试图处理同时的左键单击拖动和右键单击拖动,但是,我得到的事件不是我想要的...

回答 1 投票 0

Fl_Copy_Surface 不在窗口中绘制

我将黑色方块放在窗口上,但窗口并没有变黑: #包括 #包括 #包括 #包括 我将黑色方块放在窗户上,但窗户没有变黑: #include <FL/Enumerations.H> #include <FL/Fl.H> #include <FL/Fl_Window.H> #include <FL/Fl_Copy_Surface.H> #include <FL/fl_draw.H> int main() { Fl_Window* window = new Fl_Window(500, 500, "FLTK Test"); Fl_Copy_Surface *copy_surf = new Fl_Copy_Surface(window->w(), window->h()); // create an Fl_Copy_Surface object copy_surf->set_current(); // direct windowraphics requests to the clipboard fl_rectf(0, 0, window->w(), window->h(), FL_BLACK); // draw a white backwindowround copy_surf->draw(window); // draw the window widwindowet in the clipboard delete copy_surf; // after this, the clipboard is loaded Fl_Display_Device::display_device()->set_current(); // direct windowraphics requests back to the display window->end(); window->show(); return Fl::run(); } 我做错了什么? 这个问题已经有 4 个月了,但无论如何,以防万一其他人寻找解决方案: Fl_Copy_Surface 是绘制离屏图像以供其他小部件使用的错误类型。 copy_surf->draw(window); 会将 window 的内容绘制到 copy_surf 上,但窗口是空的。 执行 OP 想要的操作 (AFAICT) 的正确方法是使用 Fl_Image_Surface 进行离屏绘图,并从该表面获取生成的图像以供以后使用。 以下代码执行此操作,并且适用于 FLTK 1.3(使用 1.3.9/git 测试)和 1.4.0(截至今天的 git 'master' 分支)。 建议使用“FLTK 1.4 方式”,但在 1.3.x 中不可用,因此下面的代码中存在区别。 #include <FL/Fl.H> #include <FL/Fl_Window.H> #include <FL/Fl_Image_Surface.H> #include <FL/Fl_Box.H> #include <FL/fl_draw.H> #include <stdio.h> // printf() #define FLTK_14 10400 // FLTK 1.4.0 API version int main() { int WW = 500, WH = 500; // create an Fl_Image_Surface object Fl_Image_Surface *surface = new Fl_Image_Surface(WW-80, WH-80); // draw something into the image surface #if (FL_API_VERSION >= FLTK_14) // FLTK 1.4 printf("Using FLTK 1.4.0 or higher (FL_API_VERSION = %d)\n", FL_API_VERSION); Fl_Surface_Device::push_current(surface); fl_rectf(0, 0, WW-80, WH-80, FL_BLACK); // draw a black rectangle Fl_Surface_Device::pop_current(); const char *group_label = "Fl_Group with black image below:"; #else printf("Using the FLTK 1.3.x way (FL_API_VERSION = %d)\n", FL_API_VERSION); surface->set_current(); // FLTK 1.3 fl_rectf(0, 0, WW-80, WH-80, FL_BLUE); // draw a blue rectangle Fl_Display_Device::display_device()->set_current(); // FLTK 1.3 const char *group_label = "Fl_Group with blue image below:"; #endif // get the image from the surface Fl_Image *img = surface->image(); delete surface; // no longer needed if (!img) { printf("Image could not be created.\n"); return 1; } printf("Image (w, h, d, ld) = %d, %d, %d, %d\n", img->w(), img->h(), img->d(), img->ld()); // Create the GUI as usual, using the image as background of an Fl_Group Fl_Window* window = new Fl_Window(WW, WH, "FLTK Fl_Image_Surface Test"); window->color(0xcce0ff); // light blue Fl_Group* g = new Fl_Group(10, 10, WW-20, WH-20, group_label); g->box(FL_FLAT_BOX); g->color(FL_GREEN); g->image(img); g->align(FL_ALIGN_TOP | FL_ALIGN_INSIDE | FL_ALIGN_IMAGE_BACKDROP); Fl_Box* box = new Fl_Box(150, 150, 200, 100, "Box inside Fl_Group"); box->box(FL_UP_BOX); box->color(FL_YELLOW); g->end(); window->end(); window->show(); return Fl::run(); } 注意:图像img可以有多种使用方式。我选择将其设置为 Fl_Group 小部件的背景图像。所选颜色旨在查看不同的小部件、图像及其各自的尺寸。示例代码变得比必要的要长一些。第一部分创建图像,第二部分将其设置为组 g 的背景图像。

回答 1 投票 0

有没有一种方法可以修改闭包外部的字符串而不让该闭包取得它的所有权?

我正在尝试编写一个简单的计算器应用程序来掌握 FLTK,特别是 Rust 绑定。对于输出,我想在可以设置输出的地方存储一个字符串,这样它就是一个

回答 1 投票 0

在Mac上编译FLTK程序

我正在尝试在 Mac OSX Mavericks 上编译 FLTK 程序(http://www.fltk.org/index.php)。所有 .h 包都编译得很好,但我收到以下错误: ld:未找到

回答 3 投票 0

FLTK - 无法使用 g++ 编译

在 Manjaro Linux 上安装 FLTK 1.4 库后,我使用“fltk-config -compile hello.cpp”成功编译了它 但是,我似乎无法用 g++ 编译它: g++ hello.cpp -o 你好...

回答 3 投票 0

在不同的回调中调用相同的按钮

我正在尝试使用 GUI 库 FLTK 用 Rust 制作一个基本软件。请参阅我在 Pastebin 的代码。我在第 18 行创建了一个名为 input1 的按钮。我需要在两个不同的回调中调用这个按钮...

回答 1 投票 0

事件处理:永远发送按键事件

我只想在黑框中绘制一些对象(白色方块)并处理一些事件(左、下、右、上箭头被按下)。当按下其中一些键时,物体会根据方向移动......

回答 1 投票 0

FLTK 1.3:如何确定fl_line()的“上下文”?

正在寻找一些适用于 Linux 的简约 C++ GUI 框架,所以在这里我试图熟悉 FLTK 1.3 / Ubuntu。编写了一些工作代码,用 ra 来动画一些随机信号波......

回答 1 投票 0

哪个更快、更简单、重量更轻的 GUI 库:Nana C++ vs FLTK [关闭]

我正在计划一个具有传统支持的 Windows 一体化调整器。 但是 Win32 API 对于菜鸟来说太糟糕了。甚至在对话框上显示宏值也很困难。 所以我寻找快速轻便的...

回答 0 投票 0

Form是如何自动添加到Window中的?

我正在尝试学习 Rust 和 Fltk gui 库。我在这里看到了一个运行良好的小图形用户界面应用程序示例。以下是主要功能: fn 主(){ 让 a = app::App::default().with_...

回答 0 投票 0

为什么这里需要`move`

我是 Rust 编程语言的新手。我在这里看到了一个小的 fltk gui 应用程序代码。有这个函数注册回调: fn register_default_callback(&mut self) { 自我.btn.

回答 0 投票 0

无法让 Fl_ouput 在 fltk 中显示变量

使用popen用jq打开json文件。 fgets` 需要一个 char 变量来获取数据 (fgets(temp, 6, G_fp);),所以现在当我尝试将该变量放入 Fl_Outut 值时,我什么也得不到。 但是如果我设置...

回答 0 投票 0

在不阻塞主线程的情况下读取 IO 的问题

我有这段代码在 impl App 中运行,特别是在 fn launch() 中运行,就像这个例子一样。 输出读取和写入必须在单独的线程中进行,这样 GUI 就不会...

回答 0 投票 0

Rust:在不阻塞主线程的情况下读取 IO 的问题 fltk-rs

我有这段代码在 impl App 中运行,特别是在 fn launch() 中运行,就像这个例子:https://github.com/fltk-rs/fltk-rs/blob/master/fltk/examples/editor。 rs 输出读数 ...

回答 0 投票 0

C++ 和 FLTK:从文件加载 PNG 图像

我正在尝试加载图像,但出现此错误: LNK2019: 未解析的外部符号 "public: __thiscall Fl_PNG_Image::Fl_PNG_Image(char const *)" (??0Fl_PNG_Image@@QAE@PBD@Z)

回答 1 投票 0

FLTK - Mac iOS图像不显示

我在iOS Mojave 10.14.6上使用FLTK库(1.3.5版本):我写了这个简单的程序#include--------。 #include #include #include

回答 1 投票 1

如何(如果可能的话,如何在Visual Studio Code中使用FLTK?

[Bjarne Stroustrup撰写的《编程:实践与原理》(第二版)中,我对Visual Studio Code的练习和演练的回答大多是使用Visual Studio Code。我很快将开始第12章...

回答 1 投票 0

for循环中的变量在调试过程中发生奇怪的变化

我正在编写一个使用c ++利用fltk的程序。我已经在for语句中指定了条件。但是,在调试之后,发现j值未初始化,因此它是...

回答 1 投票 0

使用fltk时文本未出现在编译窗口中

我正在阅读“ C ++编程原理和实践”这本书。我正在学习如何使用fltk(第12章),并且设法安装了库并编译了程序。我可以画出基本的...

回答 1 投票 0

FLTK 1.4小部件位置w.r.t. X11根窗口?

上下文我正在与其他人RefPerSys一起编码,这是gitlab上C ++ 17中GPLv3 +项目,用于GNU / Linux / x86-64 / Debian / Sid。它的fltk-branch git分支使用的是FLTK 1.4,它是从源代码编译的,带有Xorg ...

回答 1 投票 1

© www.soinside.com 2019 - 2024. All rights reserved.