1

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

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

// include headers
#include <Windows.h>
#include <Fl/Fl.H>
#include <FL/FL_Window.h>
#include <FL/Fl_Button.h>
#include <FL/FL_ask.h>
// macro functions
#define UP(x) UNREFERENCED_PARAMETER(x)
// callback function
void callback(Fl_Widget *sender)
{
    sender->label("Thanks!");
}
// main function
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, 
    int nShowCmd)
{
    // UP's
    UP(hInstance);
    UP(hPrevInstance);
    UP(lpCmdLine);
    UP(nShowCmd);
    // window
    Fl_Window *window = new Fl_Window(250, 250, "Derp Window");
    window->begin();
    // button
    Fl_Button *button = new Fl_Button(10, 100, 230, 25, "Click Me!");
    button->callback(callback);
    // run
    window->end();
    window->show();
    int result = Fl::run();
    // delete ptr's
    delete button;
    delete window;
    // return
    return result;
}

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

在此处输入图像描述

我知道 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() 作为我的主函数时,程序运行良好。

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

4

2 回答 2

2

删除语句

配置 += 控制台

于 2012-11-28T03:00:55.240 回答
0

我通过制作“空 Qt 项目”而不是“C++ 控制台应用程序”来修复它!

于 2012-11-29T22:49:30.097 回答