wxwidgets编程
文章平均质量分 67
dqf88
这个作者很懒,什么都没留下…
展开
-
在exe程序中嵌入图片
1、利用Bin2C将图片转换成“*.c”文件;2、包含“*.c”文件,具体代码如下: =====文件名:PNG_ICON_BGMain.cpp=====/*************************************************************** * Name: PNG_ICON_BGMain.cpp * Purpose...原创 2012-10-20 23:44:52 · 1173 阅读 · 0 评论 -
给图片添加图片水印
写在开始不能用代码同时实现半透明和不规则形状的水印,只能选其一,有哪位高手指点一下不胜感激 此例中的半透明是在Fireworks中处理图片实现,不是用代码实现的 #include <wx/dcmemory.h>#include <wx/dcclient.h>#include <wx/dc.h>enum Alignment{...原创 2012-08-20 10:21:33 · 80 阅读 · 0 评论 -
使用wxStringTokenizer分割字符串
//wxStringTokenizer::wxStringTokenizer (const wxString & str, // const wxString & delims = wxDEFAULT_DELIMITERS,// ...2012-08-30 21:51:31 · 889 阅读 · 0 评论 -
wxWidgets中的wxTimer使用
1、包含头文件: #include <wx/timer.h>2、定义timer变量: wxTimer m_timer; 3、定义timer的id: # define TIMER_ID 10004、定义函数: void OnTimer ( wxTimerEvent & event );5、绑定函数: EVT_TIMER(...原创 2012-09-26 15:51:11 · 411 阅读 · 0 评论 -
wxRegEx的使用
#include <wx/regex.h>#include <wx/textfile.h>void RegExDemoFrame::OnAbout(wxCommandEvent& event){ wxRegEx ex; wxString pattern = "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\.\\w+([-.]\\w+)...原创 2012-10-09 20:35:40 · 402 阅读 · 0 评论 -
怎样解决静态编译对mingwm10.dll的依赖?
使用CodeBlocks+wxWidgets2.9.4编写的静态链接库的exe程序在别的电脑上运行时出现:“未找到mingwm10.dll……”的错误提示,怎么解决呢?在网上苦苦寻找解决途径,终于看到一个解决办法(见mingw static linking get rid of mingwm10.dll:http://ferryzhou.wordpress.com/2011/12/05/mingw...原创 2012-10-15 14:14:03 · 141 阅读 · 0 评论 -
wxWidgets框架下基于wxDialog程序的标准退出方法
退出程序的标准方法是什么呢?我觉得所谓的标准方法,是要使程序能够做一些清理工作,而不是暴力退出,从而引起内存泄露和资源泄露。那么现在我们要用wxDec-C++创建一个基于wxDialog的程序,为了验证程序是否标准退出,那么我们要在wxAPP对象的OnExit()事件中写上一个MessageBox,用来代表清理代码。int test1DlgApp::OnExit(){ MessageBo...原创 2014-02-25 16:56:30 · 832 阅读 · 0 评论 -
wxWidgets类库结构图
自从2.5.0开始,wxWidgets既可以编译成单一的代码库(这种编译方式被称为:monolithic),或者编译为一些多个小的代码库(这种编译方式被称为multilib),Multilib是默认的编译方式。 wxWidgets被划分成多个代码库的形式,简要概述如下,这张图标展示了他们之间的依赖关系: wxAui 它包含了高级的用户界面库,如控件停...原创 2014-02-26 09:08:13 · 185 阅读 · 0 评论 -
wxBoxSizer,wxFlexGridSizer,wxGridBagSizer,wxGridSizer使用示例
wxBoxSizer,wxFlexGridSizer,wxGridBagSizer,wxGridSizer使用示例,见附件:原创 2014-02-26 10:44:02 · 690 阅读 · 0 评论 -
过滤wxTextCtrl控件输入的两种方法
以下两种方法实现wxTextCtrl只接收0-9的数字.1. 使用wxTextValidator()函数#include <wx/wx.h>class MyApp:public wxApp{ public: virtual bool OnInit();};IMPLEMENT_APP(MyApp)class MyFrame:public wxFr...原创 2014-02-27 13:40:40 · 572 阅读 · 0 评论 -
通过重载实现修改wxWidgets文本处理框wxTextCtrl和wxRichTextCtrl的右键弹出菜单
wxWidget中这块是写死的,这让我感到非常郁闷,而且没有提供一些简单的配置工具,关于右键弹出菜单,我们可以通过下面这段代码来看它是怎么实现的:void wxTextCtrl::OnContextMenu(wxContextMenuEvent& event){#if wxUSE_RICHEDIT if (IsRich()) { if (!m_...原创 2014-02-27 13:44:56 · 1136 阅读 · 0 评论 -
程序只运行一个实例,并将前一个实例提到前台
wxWidgets提供了一个用来检测是否只有一个实例(instance)在运行的wxSingleInstanceChecker类。为了检测程序只运行一个实例,你可以在程序运行之初使用该类创建一个m_check对象,这个对象将存在于程序的整个生命周期。然后就可以在OnInit函数中调用其IsAnotherRunning函数检测是否已经有别的实例在运行。代码如下所示:123...原创 2014-02-28 18:28:17 · 214 阅读 · 0 评论 -
获取当前路径
#include <wx/stdpaths.h>#include <wx/filename.h>wxString GetWorkDirectory( ){ wxString strAppPath ; wxStandardPathsBase& stdp = wxStandardPaths::Get(); wxFileName exeFile(stdp.GetEx...原创 2014-03-09 16:51:54 · 130 阅读 · 0 评论 -
按键转换
1 void PopTextCtrl::OnChar(wxKeyEvent& event) 2 { 3 if(event.GetKeyCode()== 'd') 4 { 5 wxKeyEvent evt(wxEVT_CHAR); 6 evt.m_keyCode=311; 7 evt.m_r...2015-03-15 12:27:42 · 221 阅读 · 0 评论 -
wxWidgets中 wxButton实现自动点击
之前在用wxSocket通讯的时候,EVT_SOCKET事件触发后,去到结果想做一个callback于是找了很久在wxwidgets中 button.click() 触发自动点击按钮的方式,最后找到这个实现方式:12345wxCommandEvent *caller = new wxCommandEvent( wxEV...原创 2015-06-30 12:59:38 · 629 阅读 · 0 评论 -
wxBase64Encode和wxBase64Decode
#include <wx/base64.h>#include<iostream>using namespace std;void DSDialog::OnAbout(wxCommandEvent& event){ wxString src=wxT("daiqifa"); wxString str=wxBase64Encode(s...2016-04-09 15:23:36 · 523 阅读 · 0 评论 -
绘制图形并填充
=====文件名:DrawShape.h=====#ifndef __DRAWINGS_H_INCLUDED__#define __DRAWINGS_H_INCLUDED__#include <wx/dc.h>#include <wx/dcmemory.h>//---------------------------------...原创 2012-08-17 13:32:47 · 185 阅读 · 0 评论 -
wxMathPlot
wxMathPlotwxMathPlot is a library to add 2D scientific plot functionality to wxWidgets. It allows to embed inside your program a window for plotting scientific, statistical or mathematical d...原创 2012-08-17 09:39:42 · 334 阅读 · 0 评论 -
使用wxWidgets实现所见即所得打印(CodeBlocks)
1、从wxPrintout派生一个类Printout,类源码如下: =====文件名:printout.h=====#ifndef PRINTOUT_H#define PRINTOUT_H#include <wx/wx.h>#include <wx/print.h>#include <wx/printdlg.h>...原创 2012-08-14 18:10:52 · 409 阅读 · 0 评论 -
codeblocks+wxWidgets绘图
最近要用codeblocks+wxWidgets做一个实验的结果图,采用的版本是codeblocksSVN完美配置绿色版,SVN6852,下载地址http://bt.neu6.edu.cn/viewthread.php?tid=692508&highlight=codeblocks之所以采用这个版本是因为不需配置,方便快速做完现在手头上的东西。新建工程,选择wxWidgets Pr...原创 2012-07-28 21:30:58 · 351 阅读 · 0 评论 -
wxWidgets 中各字符串格式转换
在C++里常用类型转换感觉很杂,不好用;跟C#没得比:可以强类型转换,还有convert通用的转换,非常方便的说。刚用wxwidget时类型转换也是一头大,了解后发现要比MFC简洁好用多,接口也容易记住。下面上WXWIDGET常用类型转换: 一、wxstring与其他类型转换 1.1、int to wxString: wxString str = wxString::Fo...原创 2012-07-29 11:37:28 · 167 阅读 · 0 评论 -
wxWidgets实现屏幕拷贝
#include "wx/wx.h"int main(){ wxImage::AddHandler(new wxBMPHandler); wxScreenDC DC; wxSize screenSize = wxGetDisplaySize(); wxBitmap bitmap(screenSize.x, screenSize.y); ...原创 2012-08-03 22:38:35 · 100 阅读 · 0 评论 -
wxWidgets一些代码片段
1、获得本程序的进程ID long gpid; gpid=::wxGetProcessId(); wxString tempWxString; tempWxString.sprintf(wxT("%d"), gpid); wxMessageBox(tempWxString, _("Welcome ...原创 2012-08-03 22:51:21 · 92 阅读 · 0 评论 -
wxWidgets中字符串操作例子
在wxWidgets中,常见的字符串不能直接使用,而且照顾到跨平台的特性,所以字符串的处理通常是比较繁琐的,以下的代码均是工作中所所用到的片段。通过这样的方式可以将字符串进行格式化。并且由wxMessageBox弹出对话框,将字符串输出. wxString strImagePath; strImagePath.Printf(wxT("The picture adds to car...原创 2012-08-03 22:57:35 · 76 阅读 · 0 评论 -
wxWidgets播放wav格式的音乐
wxWidgets目前用的人不算太多,相关的资料也比较少,准备慢慢的把工作中所用到的一些代码片段贴上来,权且作为备忘吧.comm.h#ifndef PICTUREPROC_H_INCLUDED #define PICTUREPROC_H_INCLUDED const char soundFiles[100]="sound/main.wav"; #endif // PIC...原创 2012-08-03 22:59:35 · 78 阅读 · 0 评论 -
如何实现一个可拖动的无标题栏窗口
无标题栏窗口的实现很简单。先将窗口从wxMiniFrame继承,然后在窗口的构造函数中设置一下窗口的样式。MainFrame::MainFrame(const wxPoint& pos, const wxSize& size) : wxMiniFrame(NULL, wxID_ANY, wxEmptyString, pos, size){ SetWindo...原创 2012-08-04 08:20:02 · 263 阅读 · 0 评论 -
程序只运行一个实例,并将前一个实例提到前台
wxWidgets提供了一个用来检测是否只有一个实例(instance)在运行的wxSingleInstanceChecker类。为了检测程序只运行一个实例,你可以在程序运行之初使用该类创建一个m_check对象,这个对象将存在于程序的整个生命周期。然后就可以在OnInit函数中调用其IsAnotherRunning函数检测是否已经有别的实例在运行。代码如下所示:bool MainApp::O...原创 2012-08-04 08:30:30 · 244 阅读 · 0 评论 -
wxwidgets的应用程序图标和窗口图标
一。应用程序图标是添加一个资源文件,并加入到项目中如menustoolbars.rc添加内容如下aaaamenu ICON "riffle.ico"其中aaaamenu为随便填写的 ICON一定是大写 后面 riffle.ico是图片的位置二。窗口图标先引入图标的文件#include "riffle32x32.xpm"设置图标SetIcon(wxIcon(riffle32x32_xpm));例如...原创 2012-08-04 08:37:40 · 1401 阅读 · 0 评论 -
在CodeBlocks中用wxWidgets创建不规则窗口
我在学习CodeBlocks(10.05,中文)中用wxWidgets(wxWidgets-2.8.12)来创建不规则窗口时,发现图片不能打包到exe文件里面,这样在发布exe程序是必须要带上相应的图片,甚是不方便,经过苦思和辛苦的查阅,终于找到解决办法,现记录下这个过程作为被查,也对与我一样痛苦挣扎的小虾们一点启示吧。 一、准备工作: 1、环境的搭建,不讲了,我的配置是:Code...原创 2012-08-04 19:44:13 · 422 阅读 · 0 评论 -
wxWidgets中贴图操作
这个问题曾经困惑了我很久,因为wxWidgets的资料在网上并不是很多,所幸在工期的压力下还是捣鼓出来了。向窗体上贴图,一般图片格式采用的是JPG或者是BMP。在这里做一个申明。 //添加jpg和bmp文件支持 wxImage::AddHandler(new wxJPEGHandler); wxImage::AddHandler(new w...原创 2012-08-04 20:21:26 · 88 阅读 · 0 评论 -
以CodeBlocks为IDE,在wxWidgets中实现窗体透明效果
在VC中实现窗体的半透明很是酷毙,也想使用wxWidgets来实现这一效果,经过苦苦搜索始终没有找到解决办法,只好引入API了,经过一段时间的摸索终于搞出来了,感觉还不错,记录下来吧! 以下是需要添加的代码(详细代码见附件工程):1、添加支持API的头文件 #include "windows.h" 2、实现透明效果的代码:HWND hwnd = (HWND)...原创 2012-08-05 11:13:11 · 734 阅读 · 0 评论 -
Converting everything to and from wxString
Literals A literal is a string written in code with "quotes around it". A literal is not a wxString, and (in wxWidgets 2.8) will not be implicitly converted to one. This means that you can never ...原创 2012-08-09 09:20:52 · 76 阅读 · 0 评论 -
wxFileName
wxFileNamewxFileName encapsulates a file name. This class serves two purposes: first, it provides the functions to split the file names into components and to recombine these components in the...原创 2012-08-12 22:43:15 · 528 阅读 · 0 评论 -
遍历文件夹中所有文件(wxWidgets)
包含头文件:#include <wx/dir.h>#include <wx/dirdlg.h> 源码: wxDirDialog dirDialog(this,wxT("Choose a folder")); if (dirDialog.ShowModal() != wxID_OK) { retu...原创 2012-08-13 16:49:05 · 454 阅读 · 0 评论 -
WX_DEFINE_ARRAY的使用
/*************************************************************** * Name: AAMain.cpp * Purpose: wxwidgets中WX_DEFINE_ARRAY的使用 * Author: () * Created: 2018-03-14 * Copyright: ()...原创 2018-03-20 12:07:49 · 317 阅读 · 0 评论