- 博客(21)
- 收藏
- 关注
原创 使用Phonon::MediaSource类播放音频文件造成fopen文件错误
在使用Phonon::MediaSource类将某个文件(如1.wav)设为当前播放资源时,mediaObject->setCurrentSource(Phonon::MediaSource(QString(tr("C:/sound/1.wav"))));其中mediaObject是Phonon::MediaObject类型指针在播放完毕后想要修改此文件内容,于是用fopen打开,可是返回
2012-09-25 17:12:44 2167
原创 中文QString转成char类型中造成乱码的原因
QString内部采用的是unicode编码,但是unicode编码有很多种,在实际应用时应制定具体的编码形式,常见的有GBK、GB2312和UTF-8等。UTF-8是解决国际上字符的一种多字节编码,它包含全世界国家所用到的所有字符,通用性强。英文单字节表示,中文需要三个字节表示。GBK是国家标准GB2312基础上扩容后并兼容GB2312标准,无论英文中文都用双字节来表示。GBK包含全部中
2012-08-27 09:56:53 11976 1
转载 show()与exec()的区别
QDialog的显示有两个函数show()和exec()。他们的区别在参考文档上的解释如下:show():显示一个非模式对话框。控制权即刻返回给调用函数。弹出窗口是否模式对话框,取决于modal属性的值。(原文:Shows the dialog as a modeless dialog. Control returns immediately to the calling code
2012-07-20 09:39:49 2382
转载 Qt Style Sheets
使用Qt Style Sheets可以制作个性化的UI界面。Style sheets 是由一系列的style rules组成的。一条style rule 由选择器selector和声明declaration这两部分构成。selector说明这条规则在哪些widgets上起作用,declaration说明要在这些widgets上设置什么属性properties。例如:QPushBut
2012-07-16 20:47:05 71007
转载 Qt中浏览文件夹的实现
QT 创建文件夹1boolQDir::mkdir ( constQString & dirName ) const创建一个子目录名为目录名。如果成功则返回TRUE,否则返回false。1boolQDir::mkpath ( constQString
2012-07-16 20:38:36 12457
原创 QFont的几个例子
QPushButton a = new QPushButton(tr("abcdefg"));a->setFont(QFont("Times",16, QFont::Bold));a->setFont(QFont(("Arial"), 18, QFont::Bold))
2012-07-16 20:36:05 1890
转载 Qt文件操作
1、QIODevice直接继承自QObjectQIODevice类是输入/输出设备的基类。QIODevice为设备提供了公共实现和抽象接口用于读写块数据。QIODevice是一个抽象类,不能被实例化。被Q3Socket,Q3SocketDevice,QAbstractSocket,QBuffer,QFile,QLocalSocket,QNetworkReply,QProcess
2012-07-16 20:27:07 2937
原创 QString与int之间的转换
int 转 QStringint a=5;QString b;b=QString::number(a,10) //以十进制形式转换 b=‘5’QString 转intQString a="250"int b;b=a.toInt()
2012-07-16 20:25:38 1445
转载 addStretch的作用
今天在使用addStretch,布局的时候,发现addStretch竟然是可以平均分配的,有意思。比如:[cpp] view plaincopyQVBoxLayout *buttonLayout = new QVBoxLayout; buttonLayout->addStretch(1); buttonLayout->addWidget(
2012-07-11 10:51:42 1420
原创 qt界面主窗口布局
一、如果当前界面为QWidget类1. 主界面是QGridLayout、QVBoxLayout或是QHBoxLayout类,则直接在建立主界面对象时,将父窗口设为this即可,例如:QVBoxLayout *mainLayout = newQVBoxLayout(this);2. 主界面是QSplitter类,在创建QSplitter对象时,不指定其父窗口,然后新建一个La
2012-07-06 15:03:02 6281 1
转载 windows下QT creator的安装
http://wenku.baidu.com/view/ccb6aa1e6bd97f192279e9c0.html
2012-06-25 15:13:48 911
转载 双缓冲法解决重绘和闪屏问题
重绘导致原因:UpdateData、Invalidate、InvalidateRect和UpdateWindow函数。1. UpdateData重绘控件函数 UpdateData(TRUE) ——刷新控件的值到对应的变量。(外部输入值交给内部变量) 即:控件的值—>变量。 UpdateData(FALSE) —— 拷贝变量值到控件显示。(变量的最
2012-05-21 21:43:27 5038
原创 debug环境下通过,release环境下链接报错
程序在debug环境下通过并且能够成功运行,但切换成release环境下链接报错:daexpDlg.obj : error LNK2001: 无法解析的外部符号 __imp__mciSendCommandW@161>SoundBase.obj : error LNK2001: 无法解析的外部符号 __imp__waveInOpen@241>SoundBase.obj : error L
2012-05-14 09:16:04 2282
原创 为什么在CDialog::OnInitDialog函数中绘图没效果呢?
在OnInitDialog函数中绘图起作用了,但是只在初始化时调用一次,而界面的绘制时在接收到WM_PAINT消息后执行的,所以之前在OnInitDialog的绘图就被覆盖了。所以要看见效果,就只能在OnPaint进行绘制。下面来说说OnPaint函数的作用OnPaint()是CWnd的类成员,负责响应WM_PAINT消息。当视图变得无效时(包括大小的改变,移动,被遮盖等等),Window
2012-05-09 21:14:36 1947
转载 在unicode环境下将CString类型转换成char
原帖地址:http://hi.baidu.com/sqhily2008/blog/item/e38834fcaf105d0d09244d83.html在Visual C++.NET2005中,默认的字符集形式是Unicode,但在VC6.0等工程中,默认的字符集形式是多字节字符集(MBCS:Multi- Byte Character Set),这样导致在VC6.0中非常简单实用的各类字符操
2012-05-09 20:55:34 1027 1
原创 文件对话框的使用
CFileDialog filedlg(TRUE,NULL,NULL,OFN_HIDEREADONLY | OFN_FILEMUSTEXIST,_T("windows media|*.wav|aac file|*.aac|flac file|*.flac|All File|*.*||"));if(filedlg.DoModal()==IDOK){openFileName=filedlg
2012-05-09 20:40:11 358
原创 在按钮控件上加载背景为透明的图标
想在控件上加载图标有两种方法:一是创建Bitmap并加载,但是背景颜色不是透明的;另一种是创建Icon并加载,这种可以实现透明背景。下面来介绍使用Icon图标对控件进行加载的方法:HICON hIcon = theApp.LoadIcon(IDI_PLAY); //IDI_PLAY为Icon控件IDCButton *pButton = (CButton*)GetDlgItem(IDC_
2012-05-09 19:50:47 1499
原创 CopyMemory不同类型数据之间的复制
CopyMemory可以将两个char类型的数据拼接成一个short类型,例如:char *a=(char*)malloc(10);short *b=(short*)malloc(20);a[0]=0;a[1]=13;a[2]=0;a[3]=16;a[4]=12;a[5]=14;a[6]=156;a[7]=129;a[8]=222;a[9]=22
2012-05-09 19:41:39 2133
原创 MFC:录音同时显示波形
与大多数的录音同时显示波形的MFC程序不同,下面要说明的是录音功能单独封装在一个名为CSoundBase类中,界面类为CDaexp4Dlg,它是基于对话框界面程序的主界面,负责波形输出。下面来说一下具体步骤。1. 将CSoundBase类中录得的数据传递给CDaexp4Dlg类(1)在CSoundBase类发送消息在CSoundBase类中的数据缓冲区满消息处理函数中void CSou
2012-05-07 16:04:10 7035 1
转载 浅谈C中的malloc和free释放
在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数的了解甚少,只知道大概该怎么用——就是 malloc然后free就一切OK了。当然现在对这两个函数的体会也不见得多,不过对于本文章第三部分的内容倒是有了转折性的认识,所以写下这篇文章作为一个对知识的总结。这篇文章之所以命名中有个“浅谈”的字眼,也就是这个意思了!希望对大家有一点帮助!
2012-05-07 09:48:56 793
原创 将非窗口类中的数据传递到窗口类中
例如:将录音数据由录音操作类传递给窗口类来显示录音波形图非窗口类为CSoundBase,窗口类为CDaexp4Dlg在CSoundBase中发送消息PostMessage(m_wnd, WM_MYMESSAGE,dwBytesRecorded,(LPARAM)pSaveBuffer);其中m_wnd是在SoundBase.h中定义的HWND m_wnd;标识要发送给哪个窗口
2012-05-02 19:14:35 717
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人