imgui图片对话框linux,imgui显示图片

本文展示了如何在Linux环境下,利用ImGui库结合Direct3D9来创建一个窗口,并加载并显示本地的JPEG图片。主要涉及了窗口初始化、Direct3D9设备创建、ImGui界面库的初始化和图片加载等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include #pragma comment(lib,"d3d9")

#define STB_IMAGE_IMPLEMENTATION

#include "stb_image.h"

#define STB_IMAGE_WRITE_IMPLEMENTATION

#include "stb_image_write.h"

#include "imgui/imgui.h"

#include "imgui/imgui_impl_dx9.h"

#include "imgui/imgui_impl_win32.h"

//全局变量

const char* g_name = "image_mark";

HWND g_hwnd;

IDirect3D9* g_idrect3d9;

LPDIRECT3DDEVICE9 g_direct3ddevice9;

D3DPRESENT_PARAMETERS g_present;

LPDIRECT3DTEXTURE9 g_texture;

//前向声明

void initialize_wnd() noexcept;

void initialize_d3d9() noexcept;

void initialize_imgui() noexcept;

void message_handle() noexcept;

void render_handle() noexcept;

void reset_device() noexcept;

void clear_setting() noexcept;

void load_image() noexcept;

LRESULT _stdcall window_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam);

int main(int argc, char* argv[])

{

initialize_wnd();

initialize_d3d9();

initialize_imgui();

message_handle();

clear_setting();

return 0;

}

//初始化窗口

void initialize_wnd() noexcept

{

WNDCLASSEXA wc =

{

sizeof(WNDCLASSEX),CS_CLASSDC,window_proc,0L,0L,GetModuleHandle(NULL),

NULL,NULL,NULL,NUL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值