wxwidgets 相关问题

wxWidgets是一个跨平台的GUI框架。它是用C ++编写的,具有Python,Perl,Ruby,PHP,Erlang甚至.Net的绑定。它还支持多种移动平台,包括Windows Mobile,iPhone SDK和嵌入式GTK +。

仅使用数值格式化 wx.TextCtrl - 浮点精度

我创建了一个简单的应用程序,它使用带有 wxFILTER_NUMERIC 的裸 TextCtrl 小部件,以便仅接受数字值(请参阅下面的代码)。 我希望这些值具有固定的显示精度

回答 2 投票 0

如何在剪贴板中创建虚拟文件以粘贴到资源管理器中?

我目前正在为 Windows 10/11 开发一个 wxWidgets 应用程序,该应用程序应该生成一个文件。该文件是安全敏感文件,因此尽量减少磁盘上的副本是理想的选择。结果,我想...

回答 1 投票 0

wxGraphicsContext 和 wxDC

我已经编写了一个图表应用程序,全部使用wxDC及其子类。然而,我意识到 wxGraphicsContext 提供了比 wxDC 真正优越的优势,但有自己的生态系统,这非常

回答 1 投票 0

使用自定义事件在面板之间传输信息

在使用 C++ 的现代 wxwidgets 中,我试图使用自定义事件在两个 wxPanel 之间传输信息 - 但似乎我无法做到正确。我遇到各种编译器错误,但我没有

回答 1 投票 0

如何禁用wxGrid单元格突出显示?

如标题所示 - 如何禁用 wxGrid 选定(通过鼠标)单元格突出显示,如附图所示。 我尝试过使用 SetCellHighlightColour 方法,但它没有任何作用!还有这个

回答 1 投票 0

GCC 14.x 的 UCRT 与 MSVCRT

我正在将 MinGW64 与 Codelite 一起使用,并且刚刚下载了最新的 GNU GCC 版本包 14.1 和 14.2。对于 14.1,我找到了 2 个软件包(UCRT 和 MSVCRT),对于 14.2,我只得到了 UCRT 版本...

回答 1 投票 0

如何使窗口/框架/控件可拖动?

如何使 wxGrid 实例可拖动?也就是说wxGrid嵌入在主wxFrame上。默认情况下,人们可以通过单击标题栏并拖动来移动整个应用程序窗口。如何做...

回答 1 投票 0

定位 wxFrame 对象

使用官方 wxWidgets 站点上非常简单的 wxFrame 示例,我想将创建的窗口位置设置为突出到屏幕的左上角 所以我添加了简单的框架->SetPos...

回答 1 投票 0

在 code::block 中使用 Visual C++ 2010 编译器使用 widgets 库时,出现错误

首先:我有 Code::Block v13.12、widgets v3.0.0 和 Visual C++ 2010 编译器; 当使用Code::Block IDE开发widgets应用程序时,通过使用Visual C++ 2010编译器。 当编译任何

回答 2 投票 0

如何在我的 wxWidgets 项目中使用 CMake 链接到静态库 (libtiff)?

对于我的wxWidgets项目,我正在尝试从我自己编写的Makefile切换到Cmake。我在 macOS 上开发。 当我编写 Makefile 时,我遇到了 libtiff 的问题。我想要

回答 2 投票 0

如何在wxScrolledWindow上正确绘制内容?

我正在使用 wxWidgets 创建一个动画时间轴小部件。 该小部件由一个 wxFrame 和一个 wxScrolledWindow 子级组成: 我想通过更改时间线窗口virt来支持水平缩放...

回答 1 投票 0

在WXwidgets中,如何将一个类中的事件绑定到不同类中的函数

在C++中使用wxwidgets,我试图将一个类中的事件绑定到不同类中的函数。像这样的东西: Button1->Bind(wxEVT_BUTTON, &PanelA::FuncA, this); 按钮2->绑定(

回答 1 投票 0

我无法使用 wxWidgets 进行绘图

我正在尝试制作贪吃蛇游戏。我能够打开窗户,但没有运气将网格绘制到窗户上。 // 蛇.h #pragma 一次 #包括 #包括 我正在尝试制作贪吃蛇游戏。我能够打开窗户,但未能将网格绘制到窗户上。 // Snake.h #pragma once #include <wx/wx.h> #include <stdio.h> #include <stdbool.h> #include <stdlib.h> #include <wx/dcbuffer.h> class Snake : public wxFrame { public: Snake(const wxString& title); private: void CreateControls(); void BindEventHandlers(); void OnKeyPressed(wxKeyEvent& evt); void OnPaint(wxPaintEvent& event); void ClosePanel() { this->Close(); // Close the parent window, which will close the panel } wxPanel* panel; }; #include "Snake.h" #include <stdio.h> #include <stdlib.h> #include <wx/wx.h> Snake::Snake(const wxString& title) : wxFrame(nullptr, wxID_ANY, title) { CreateControls(); BindEventHandlers(); } void Snake::CreateControls() { panel = new wxPanel(this); SetBackgroundColour(wxColour(38, 36, 40)); } void Snake::BindEventHandlers() { panel->Bind(wxEVT_KEY_DOWN, &Snake::OnKeyPressed, this); //why did this-> not work? learn hiearchy? because frame did not work? this->Bind(wxEVT_PAINT, &Snake::OnPaint, this); } void Snake::OnKeyPressed(wxKeyEvent& evt) { switch (evt.GetKeyCode()) { case WXK_UP: break; case WXK_DOWN: break; case WXK_LEFT: break; case WXK_RIGHT: break; case WXK_ESCAPE: ClosePanel(); break; case WXK_BACK: ClosePanel(); break; } } void Snake::OnPaint(wxPaintEvent& event) { wxBufferedPaintDC dc(this); // Use wxBufferedPaintDC to prevent flickering // draw some text dc.DrawText(wxT("Testing"), 40, 60); // draw a circle dc.SetBrush(*wxGREEN_BRUSH); // green filling dc.SetPen(wxPen(wxColor(255, 0, 0), 5)); // 5-pixels-thick red outline dc.DrawCircle(wxPoint(200, 100), 25 /* radius */); // draw a rectangle dc.SetBrush(*wxBLUE_BRUSH); // blue filling dc.SetPen(wxPen(wxColor(255, 175, 175), 10)); // 10-pixels-thick pink outline dc.DrawRectangle(300, 100, 400, 200); // draw a line dc.SetPen(wxPen(wxColor(0, 0, 0), 3)); // black line, 3 pixels thick dc.DrawLine(300, 100, 700, 300); // draw line across the rectangle } 您正在框架上绘图,但它完全被面板覆盖。您可能也想在面板上绘图,即绑定到 wxEVT_PAINT 上的 panel,而不是 this。 请注意,您的绘画处理程序可能仍然是 Snake 框架的成员,但您仍然需要在其中的面板上进行绘制,即创建一个与 panel 关联的 DC,而不是与其中的 this 关联。

回答 1 投票 0

我无法使用 wxWidgets 进行绘图。我做错了什么?

我正在尝试制作贪吃蛇游戏。我能够打开窗户,但没有运气将网格绘制到窗户上。 // 蛇.h #pragma 一次 #包括 #包括 我正在尝试制作一个贪吃蛇游戏。我能够打开窗户,但未能将网格绘制到窗户上。 // Snake.h #pragma once #include <wx/wx.h> #include <stdio.h> #include <stdbool.h> #include <stdlib.h> #include <wx/dcbuffer.h> class Snake : public wxFrame { public: Snake(const wxString& title); private: void CreateControls(); void BindEventHandlers(); void OnKeyPressed(wxKeyEvent& evt); void OnPaint(wxPaintEvent& event); void ClosePanel() { this->Close(); // Close the parent window, which will close the panel } wxPanel* panel; }; #include "Snake.h" #include <stdio.h> #include <stdlib.h> #include <wx/wx.h> Snake::Snake(const wxString& title) : wxFrame(nullptr, wxID_ANY, title) { CreateControls(); BindEventHandlers(); } void Snake::CreateControls() { panel = new wxPanel(this); SetBackgroundColour(wxColour(38, 36, 40)); } void Snake::BindEventHandlers() { panel->Bind(wxEVT_KEY_DOWN, &Snake::OnKeyPressed, this); //why did this-> not work? learn hiearchy? because frame did not work? this->Bind(wxEVT_PAINT, &Snake::OnPaint, this); } void Snake::OnKeyPressed(wxKeyEvent& evt) { switch (evt.GetKeyCode()) { case WXK_UP: break; case WXK_DOWN: break; case WXK_LEFT: break; case WXK_RIGHT: break; case WXK_ESCAPE: ClosePanel(); break; case WXK_BACK: ClosePanel(); break; } } void Snake::OnPaint(wxPaintEvent& event) { wxBufferedPaintDC dc(this); // Use wxBufferedPaintDC to prevent flickering // draw some text dc.DrawText(wxT("Testing"), 40, 60); // draw a circle dc.SetBrush(*wxGREEN_BRUSH); // green filling dc.SetPen(wxPen(wxColor(255, 0, 0), 5)); // 5-pixels-thick red outline dc.DrawCircle(wxPoint(200, 100), 25 /* radius */); // draw a rectangle dc.SetBrush(*wxBLUE_BRUSH); // blue filling dc.SetPen(wxPen(wxColor(255, 175, 175), 10)); // 10-pixels-thick pink outline dc.DrawRectangle(300, 100, 400, 200); // draw a line dc.SetPen(wxPen(wxColor(0, 0, 0), 3)); // black line, 3 pixels thick dc.DrawLine(300, 100, 700, 300); // draw line across the rectangle } 您正在框架上绘图,但它完全被面板覆盖。您可能也想在面板上绘图,即绑定到 wxEVT_PAINT 上的 panel,而不是 this。 请注意,您的绘画处理程序可能仍然是 Snake 框架的成员,但您仍然需要在其中的面板上进行绘制,即创建一个与 panel 关联的 DC,而不是与其中的 this 关联。

回答 1 投票 0

wxWebRequest 在发布时崩溃,但在调试时工作

我正在使用 wxWebRequest 从服务器下载一个非常小的(1 KB)文本文件,代码如下: 自动 WebRequest = wxWebSession::GetDefault().CreateRequest(this, “https://www.pebytes...

回答 1 投票 0

C++ 宏将 __PRETTY_FUNCTION__ 添加到格式化的 wxLog 函数调用

我有一个使用 wxWidgets 的应用程序,并且我正在使用内置的 wxLogging 来通过 wxLogError(msg) 打印消息。 本质上我想要一个宏来接受我所有的 wxLogError 调用并添加

回答 1 投票 0

如何在没有 AUI 管理器的情况下将 wxPanel 添加到 wxFormBuilder 中的框架

我目前正在学习wxWidgets,到目前为止我发现它非常灵活。然而,当我转向 wxFormBuilder 以创建更复杂的 UI 时,它变得痛苦。让我给你一个简单的例子......

回答 1 投票 0

使用 mingw64 和 vscode 设置 wxWidgets

我已经尝试了从 wxWiki 到 chatGPT 的所有方法,但没有任何方法可以解决我的问题,请注意,我不需要替代解决方案,并且想了解我在此实现中缺少的内容。 ...

回答 1 投票 0

如何更改wxRitchTextCtrl中文本的默认颜色

如何更改wxRitchTextCtrl中文本的默认颜色 这是我的源代码 我改变前景色、默认颜色等。我总是得到黑色。 ed = new wxRichTextCtrl(面板, wxID_ANY,

回答 1 投票 0

如何在wxwidgets c++中的不同面板或选项卡之间传输数据?

我正在使用 wxwidgets 用 c++ 编写 GUI 代码。在 GUI 中,我有一个从用户接收信息的输入面板,以及一个显示数值模拟结果的输出面板......

回答 1 投票 0

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