FLTK - FLTK1.4.1 - 搭建模板,将FLTK自带的实现搬过来做实验

文章目录

    • FLTK - FLTK1.4.1 - 搭建模板,将FLTK自带的实现搬过来做实验
    • 概述
    • 笔记
    • my_fltk_test.cpp
    • fltk_test.h
    • fltk_test.cxx
    • 用adjuster工程试了一下,好使。
    • END

FLTK - FLTK1.4.1 - 搭建模板,将FLTK自带的实现搬过来做实验

概述

用fluid搭建UI, 然后将生成的代码搬到自己工程中,这是普通流程。

但是如果想过一遍fltk自带的demo工程,而且fltk自带的demo大部分是不带fl的,如果想自己根据demo实现再重新搭fl文件,有点本末导致。
且已经知道了fluid的操作流程,放置的控件都是啥效果,控件参数的调整基本一致,具体再试验了,只是时间问题。真没必要脱裤子放屁。
且fltk自带的demo工程是一组依赖cmake编译的工程,已经试过了,如果改一点,将VS2019关掉时,会关不掉。

想再搭一个工程模板,将fltk的demo粘贴过来,稍微改一下调用点,就可以直接做实验。

笔记

在这里插入图片描述

my_fltk_test.cpp

//! @file my_fltk_test.cpp
//! @biref fltk试验模板,可以将fltk自带的demo实现粘贴过来用#include "framework.h"
#include "my_fltk_test.h"
#include "fltk_test.h"// error LNK2019: 无法解析的外部符号 GdiplusStartup
#pragma comment(lib, "GdiPlus.lib")// error LNK2019: 无法解析的外部符号 __WSAFDIsSet
#pragma comment(lib,"ws2_32.lib")// error LNK2019: 无法解析的外部符号 __imp__TrackMouseEvent
#pragma  comment(lib,"Comctl32.lib")#ifdef _DEBUG
#pragma comment(lib, "fltk_formsd.lib")
#pragma comment(lib, "fltk_gld.lib")
#pragma comment(lib, "fltk_imagesd.lib")
#pragma comment(lib, "fltk_jpegd.lib")
#pragma comment(lib, "fltk_pngd.lib")
#pragma comment(lib, "fltk_zd.lib")
#pragma comment(lib, "fltkd.lib")
#else
// @todo add release lib
#endifint APIENTRY wWinMain(_In_ HINSTANCE hInstance,_In_opt_ HINSTANCE hPrevInstance,_In_ LPWSTR    lpCmdLine,_In_ int       nCmdShow)
{UNREFERENCED_PARAMETER(hPrevInstance);UNREFERENCED_PARAMETER(lpCmdLine);const char* app_title = "fltk test app";return fl_demo_main(1, (char**)&app_title);// return 0;
}

fltk_test.h

//! @file fltk_test.h#ifndef _FLTK_TEST_H_int fl_demo_main(int argc, char** argv);#endif // !_FLTK_TEST_H_

fltk_test.cxx


#include "fltk_test.h"// 如果要将fl demo的实现搬过来测试,就注释掉下面的宏
#define DONT_USE_FL_DEMO#ifdef DONT_USE_FL_DEMO
int fl_demo_main(int argc, char** argv)
{return 0;
}#else#endif // TEST_FL_DEMO// 将fltk的单文件实现都贴在这里
// 将main() 改名为 fl_demo_main()

用adjuster工程试了一下,好使。

在此模板工程,针对fltk自带的不同demo工程,需要改动的只是 fltk_test.cxx


#include "fltk_test.h"// 如果要将fl demo的实现搬过来测试,就注释掉下面的宏
// #define DONT_USE_FL_DEMO#ifdef DONT_USE_FL_DEMO
int fl_demo_main(int argc, char** argv)
{return 0;
}#else#endif // TEST_FL_DEMO//
// Adjuster test program for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998-2010 by Bill Spitzak and others.
//
// This library is free software. Distribution and use rights are outlined in
// the file "COPYING" which should have been included with this file.  If this
// file is missing or damaged, see the license at:
//
//     https://www.fltk.org/COPYING.php
//
// Please see the following page on how to report bugs and issues:
//
//     https://www.fltk.org/bugs.php
//#include <stdlib.h>
#include <FL/Fl.H>
#include <FL/Fl_Double_Window.H>
#include <FL/Fl_Adjuster.H>
#include <FL/Fl_Box.H>void adjcb(Fl_Widget* o, void* v) {Fl_Adjuster* a = (Fl_Adjuster*)o;Fl_Box* b = (Fl_Box*)v;a->format((char*)(b->label()));b->redraw();
}int fl_demo_main(int argc, char** argv) {Fl_Double_Window window(320, 100, argv[0]);char buf1[100];Fl_Box b1(FL_DOWN_BOX, 20, 30, 80, 25, buf1);b1.color(FL_WHITE);Fl_Adjuster a1(20 + 80, 30, 3 * 25, 25);a1.callback(adjcb, &b1);adjcb(&a1, &b1);char buf2[100];Fl_Box b2(FL_DOWN_BOX, 20 + 80 + 4 * 25, 30, 80, 25, buf2);b2.color(FL_WHITE);Fl_Adjuster a2(b2.x() + b2.w(), 10, 25, 3 * 25);a2.callback(adjcb, &b2);adjcb(&a2, &b2);window.resizable(window);window.end();window.show(argc, argv);return Fl::run();
}

在这里插入图片描述

END

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/9041.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于物联网设计的疫苗冷链物流监测系统

一、前言 1.1 项目开发背景 随着全球经济的发展和物流行业的不断创新&#xff0c;疫苗和生物制品的运输要求变得越来越高。尤其是疫苗的冷链物流&#xff0c;温度、湿度等环境因素的控制直接关系到疫苗的质量和效力&#xff0c;因此高效、可靠的冷链监控系统显得尤为重要。冷…

JVM对象分配内存如何保证线程安全?

大家好&#xff0c;我是锋哥。今天分享关于【JVM对象分配内存如何保证线程安全?】面试题。希望对大家有帮助&#xff1b; JVM对象分配内存如何保证线程安全? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在JVM中&#xff0c;对象的内存分配是通过堆内存进行的。…

移动光猫怎么自己改桥接模式?

环境&#xff1a; 型号H3-8s 问题描述&#xff1a; 家里宽带用的是H3-8s 光猫&#xff0c;想改桥接模式。 解决方案&#xff1a; 1.默认管理员账号和密码&#xff1a; 账号&#xff1a;CMCCAdmin 密码&#xff1a;aDm8H%MdAWEB页面我试了登陆不了&#xff0c;显示错误 …

大数据Hadoop入门3

第五部分&#xff08;Apache Hive DML语句和函数使用&#xff09; 1.课程内容大纲和学习目标 2.Hive SQL-DML-load加载数据操作 下面我们随机创建文件尝试一下 先创建一个hivedata文件夹 在这个文件夹中写一个1.txt文件 下面使用beeline创建一张表 只要将1.txt文件放在t_1文件…

2025.1.26机器学习笔记:C-RNN-GAN文献阅读

2025.1.26周报 文献阅读题目信息摘要Abstract创新点网络架构实验结论缺点以及后续展望 总结 文献阅读 题目信息 题目&#xff1a; C-RNN-GAN: Continuous recurrent neural networks with adversarial training会议期刊&#xff1a; NIPS作者&#xff1a; Olof Mogren发表时间…

基于物联网的火灾报警器设计与实现(论文+源码)

1 总体方案设计 本次基于物联网的火灾报警器&#xff0c;其系统总体架构如图2.1所示&#xff0c;采用STM32f103单片机作为控制器&#xff0c;通过DS18B20传感器实现温度检测&#xff1b;通过MQ-2烟雾传感器实现烟雾检测&#xff1b;.通过火焰传感器实现火焰检测&#xff0c;当…

ResNeSt: Split-Attention Networks论文学习笔记

这张图展示了一个名为“Split-Attention”的神经网络结构&#xff0c;该结构在一个基数组&#xff08;cardinal group&#xff09;内进行操作。基数组通常指的是在神经网络中处理的一组特征或通道。图中展示了如何通过一系列操作来实现对输入特征的注意力机制。 以下是图中各部…

模糊综合评价

模糊综合评价的特点主要体现在以下几个方面&#xff1a; 一、系统性强 模糊综合评价法能够综合考虑多种因素的影响&#xff0c;将定性指标和定量指标相结合&#xff0c;对评价对象进行全面、系统的分析。这种方法避免了单一指标评价的片面性&#xff0c;提高了评价的准确性和…

宫本茂的游戏设计思想:有趣与风格化

作为独立游戏开发者之一&#xff0c;看到任天堂宫本茂20年前的言论后&#xff0c;深感认同。 游戏研发思想&#xff0c;与企业战略是互为表里的&#xff0c;游戏是企业战略的具体战术体现&#xff0c;虚空理念的有形载体。 任天堂长盛不衰的关键就是靠简单有趣的游戏&#xf…

deepseek-r1 本地部署

deepseek 最近太火了 1&#xff1a;环境 win10 cpu 6c 内存 16G 2: 部署 1>首先下载ollama 官网&#xff1a;https://ollama.com ollama 安装在c盘 模型可以配置下载到其他盘 OLLAMA_MODELS D:\Ollama 2>下载模型并运行 ollama run deepseek-r1:<标签> 1.5b 7b 8…

electron typescript运行并设置eslint检测

目录 一、初始化package.json 二、安装依赖 1、安装electron 2、安装typescript依赖 3、安装eslint 三、项目结构 四、配置启动项 一、初始化package.json 我的&#xff1a;这里的"main"没太大影响&#xff0c;看后面的步骤。 {"name": "xlo…

每日一题-判断是否是平衡二叉树

判断是否是平衡二叉树 题目描述数据范围题解解题思路递归算法代码实现代码解析时间和空间复杂度分析示例示例 1示例 2 总结 ) 题目描述 输入一棵节点数为 n 的二叉树&#xff0c;判断该二叉树是否是平衡二叉树。平衡二叉树定义为&#xff1a; 它是一棵空树。或者它的左右子树…

WS2812 梳理和颜色表示方法的对比:RGB和HSV

WS2812 WS2812是一种可编程的LED灯&#xff0c;具有RGB显示效果&#xff0c;可显示的颜色数量为2^24。 常用颜色表示方法 表示方法&#xff1a; RGB 表示 加法混色原理&#xff1a;RGB 颜色模型基于加法混色原理&#xff0c;将红&#xff08;Red&#xff09;、绿&#xff08…

一文简单回顾Java中的String、StringBuilder、StringBuffer

简单说下String、StringBuilder、StringBuffer的区别 String、StringBuffer、StringBuilder在Java中都是用于处理字符串的&#xff0c;它们之间的区别是String是不可变的&#xff0c;平常开发用的最多&#xff0c;当遇到大量字符串连接的时候&#xff0c;就用StringBuilder&am…

对游戏宣发的粗浅思考

1.两极分化 认真观摩了mgs系列制作人的x账号&#xff0c; 其更新频率吓死人&#xff0c;一天能发几十条之多&#xff0c;吓死人。大部分都是转发相关账号的ds2或mgs相关内容&#xff0c; 每日刻意的供给这些内容来满足几十万粉丝需求&#xff0c;维护热情。 幕后是专业的公…

【数据结构】空间复杂度

目录 一、引入空间复杂度的原因 二、空间复杂度的分析 ❥ 2.1 程序运行时内存大小 ~ 程序本身大小 ❥ 2.2 程序运行时内存大小 ~ 算法运行时内存大小 ❥ 2.3 算法运行时内存大小 ❥ 2.4 不考虑算法全部运行空间的原因 三、空间复杂度 ❥ 3.1空间复杂度的定义 ❥ 3.2 空…

实践网络安全:常见威胁与应对策略详解

&#x1f4dd;个人主页&#x1f339;&#xff1a;一ge科研小菜鸡-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 引言 在数字化转型的浪潮中&#xff0c;网络安全的重要性已达到前所未有的高度。无论是个人用户、企业&#xff0c;还是政府机构…

Tensor 基本操作2 理解 tensor.max 操作,沿着给定的 dim 是什么意思 | PyTorch 深度学习实战

前一篇文章&#xff0c;Tensor 基本操作1 | PyTorch 深度学习实战 本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started 目录 Tensor 基本操作torch.max默认指定维度 Tensor 基本操作 torch.max torch.max 实现降维运算&#xff0c;基于指定的 d…

图像处理之HSV颜色空间

目录 1 RGB 的局限性 2 HSV 颜色空间 3 RGB与HSV相互转换 4 HSV颜色模型对图像的色相、饱和度和明度进行调节 5 演示Demo 5.1 开发环境 5.2 功能介绍 5.3 下载地址 参考 1 RGB 的局限性 RGB 是我们接触最多的颜色空间&#xff0c;由三个通道表示一幅图像&#xff0c;分…

数据结构题目 课时9

题目 1、任何一个带权的无向连通图的最小生成树&#xff08; &#xff09;。 A. 只有一棵 B. 有一棵或多棵 C. 一定有多棵 D. 可能不存在 2、一个赋权网络如下图所示。从顶点 a 开始&#xff0c;用 Prim 算法求出一棵最小生成树。 3、请对下图的无向带权图按克鲁斯卡尔算法求…