From 76cc27841e6c85af87d33076a254ecd2fe58ef64 Mon Sep 17 00:00:00 2001 From: chenhuan Date: Sat, 26 Oct 2019 16:39:25 +0200 Subject: [PATCH] 1.remake the mouse input and the keyboard input 2.add a bild(image/background.png) and display this bild as background --- CMakeLists.txt | 3 +- image/background.png | Bin 0 -> 47790 bytes main/main.cpp | 69 +++++++++++++++++++++++++++++-------------- 3 files changed, 49 insertions(+), 23 deletions(-) create mode 100644 image/background.png diff --git a/CMakeLists.txt b/CMakeLists.txt index d8c4951..bf43ed9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,7 +29,8 @@ target_link_libraries(GUI ${LIB_PATH}/lib/liblibrary.a) set(FLTK_SKIP_FLUID true) find_package(FLTK REQUIRED) include_directories(${FLTK_INCLUDE_DIR}) -target_link_libraries(${PROJECT_NAME} ${FLTK_BASE_LIBRARY} ${FLTK_PLATFORM_DEPENDENT_LIBS}) +target_link_libraries(${PROJECT_NAME} ${FLTK_PLATFORM_DEPENDENT_LIBS} ${FLTK_LIBRARIES} ${OPENGL_LIBRARIES}) + enable_testing() find_package(Catch2 REQUIRED) diff --git a/image/background.png b/image/background.png new file mode 100644 index 0000000000000000000000000000000000000000..6f04f51385a7211134ce1a32d8b27cc205394233 GIT binary patch literal 47790 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

l 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 XI$ig8<4I6cz)^ -#include -#include +#pragma comment(lib, "fltk.lib") +#pragma comment(lib, "wsock32.lib") +#pragma comment(lib, "comctl32.lib") +#pragma comment(linker, "/NODEFAULTLIB:LIBCMTD.lib") + + #include +#include +#include +#include +#include -using namespace std; +#define window_size 400 +/*****************************************************************************/ +/* This class provides a view to copy the offscreen surface to */ +class My_Window : public Fl_Window{ + int x,y,button; + int handle(int e) + { -void button_cb(Fl_Widget* wid){ - Fl_Button* but = (Fl_Button*)wid; - - if(but->label()=="&Good job"){ - but->label("&Click me"); - } else - but->label("&Good job"); - but->redraw(); -} + switch (e) + { + case FL_MOVE: + x = Fl::event_x(); + y = Fl::event_y(); + std::cout<<"Postion X:"<< x <<" Postion Y:"<< y <begin(); + Fl_PNG_Image* background = new Fl_PNG_Image("../image/background.png"); + std::cout<Fl_Image::fail()<image(background); + box->redraw(); + window->end(); + window->show(argc,argv); + return Fl::run(); +} // main \ No newline at end of file