`
duyouhua1214
  • 浏览: 236253 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论
文章列表

Linux音频编程指南

 
一、数字音频 音频信号是一种连续变化的模拟信号,但计算机只能处理和记录二进制的数字信号,由自然音源得到的音频信号必须经过一定的变换,成为数字音频信号之后,才能送到计算机中作进一步的处理。 数字音频系统通过将声波的波型转换成一系列二进制数据,来实现对原始声音的重现,实现这一步骤的设备常被称为模/数转换器(A/D)。A/D转换器以每秒钟上万次的速率对声波进行采样,每个采样点都记录下了原始模拟声波在某一时刻的状态,通常称之为样本(sample),而每一秒钟所采样的数目则称为采样频率,通过将一串连续的样本连接起来,就可以在计算机中描述一段声音了。对于采样过程中的每一个样本来说,数字音频系统会分配一定 ...

QSettings 与中文

    博客分类:
  • QT
本文介绍的是QSettings的 IniFormat 截止目前(Qt4.7)对中文的支持情况,如果你想实现自己定义格式(比如"[中文] 中文=中文"这样),可参看 QSettings 自定义格式 Qt4.4(包含)之前 先看个例子: # include <QtCore / QCoreApplication> # include <QtCore / QSettings> int main (int argc , char ...

QToolTip 的使用

    博客分类:
  • QT
最简单和常规的用法 QWidget::setToolTip() 高级用法,使用类型的 QEvent::ToolTip 的 QHelpEvent 事件(注意ignore使用) bool SortingBox::event(QEvent *event) { if (event->type() == QEvent::ToolTip) { QHelpEvent *helpEvent = static_cast<QHelpEvent *>(event); if (xxxxxx) { ...
记不清是第几次看到有人问这个问题了:"如何限定QLineEdit只接收某一范围的整数" 方法一 不使用 QLineEdit,因为 QSpinBox 提供了我们和整数打交道需要的功能,直接使用 QSpinBox 是最简单的。 可能有人想:我不想要 QSpinBox 提供的那两个按钮,我不想让用户修改数据,... 这些都容易解决,具体看QSpinBox 的 Manual,或者看下面的例子 方法二 这个可能比上一个更容易想到,用 QIntValidator 。但说实话,这个没有前面的方法好用。 比如:有人抱怨,编辑结束时它不会自动 fixup 无效 ...

绘制更Smooth的UI

    博客分类:
  • QT
以前很长一段时间,在自定义控制绘制时,只是简单的定义一个QPainter对象而开始绘画。经常会画一些圆角矩形,甚至是一些不规则的图形。对于不规则的图形来说,如果PS技术不好,或者mask制作的不好,常常在绘制后会有锯齿样、质量较低的情况出现。 其实,解决这类问题很简单,只需要在绘制之前,设置好QPainter的RenderHint(s)就好了:     QPainter painter(this); //make the roundedRect or something else smooth painter.setRenderHints(QPainter:: ...

QT透明窗体大杂烩

    博客分类:
  • QT
1. 窗口整体透明,但是窗体上的控件不透明。 通过设置窗体的背景色来实现,将背景色设置为全透。 QPalette pal = palette(); pal.setColor(QPalette::Background, QColor(0x00,0xff,0x00,0x00)); setPalette(pal); 试验效果: 窗体标题栏不透明; 窗体客户区上的控件不透明, QLabel 控件只是字显示,控件背景色透明; 窗体客户区完全透明。 另外从网上看到的方法: setAttribute(Qt::WA_ ...

Qt全局宏和变量

    博客分类:
  • QT
1.  Qt 全局宏定义 Qt版本号:  QT_VERSION :  (major << 16) + (minor << 8) + patch 检测版本号: QT_VERSION_CHECK(major, minor, patch)((major<<16)|(minor<<8)|(patch)) 当使用命名空间时的一些宏定义: namespace QT_NAMESPACE {} //命名空间定义 # define QT_PREPEND_NAMESPACE(name) ::QT_NAMESPACE::name # define Q ...
本文介绍的是 Qt 选择性编译和库裁减,帮你节约时间的一篇文章,先来看内容。 AD:   Qt 选择性编译和库裁减是本文将要介绍的内容,编译一次Qt要耗费太多的时间,常常是越着急用它,编起来越慢。其实通过很简单的几招可以帮你节省编译的时间。下面就一一道来:
指定临时文件生成目录,使项目文件夹更干净       QT默认情况下把所有的编译中间文件都生成到debug和release文件夹里。可以在.pro文件中加入: MOC_DIR = tmp/moc RCC_DIR = tmp/rcc UI_DIR = tmp/ui OBJECTS_DIR = tmp/obj 这样,编译时生成的临时文件就按不同类型分类放到项目下的tmp文件夹中了。   来源:http://www.cppblog.com/lauer3912/archive/2011/04/15/144335.html

Qt的一些样式技巧

    博客分类:
  • QT
一. 背景刷成黑色,前景色设为白色。        方法一、paltette方式,经测试,该方法不会影响到其他控件,推荐使用 QPalette bgpal = palette();                     bgpal.setColor (QPalette::Background, QColor (0, 0 , 0, 255));                      //bgpal.setColor (QPalette::Background, Qt::transparent);                      bgpal.setColor (QPale ...

QLineEdit 自动完成

    博客分类:
  • QT
-------------------------------------CompleteLineEdit.h------------------------------------- #ifndef COMPLETELINEEDIT_H #define COMPLETELINEEDIT_H   #include <QtGui/QLineEdit> #include <QStringList>   class QListView; class QStringListModel; class QModelIndex;   class Compl ...
摘要:    通常,我们运行shell程序都是在终端里进行的,而在产品中,不可能叫用户到终端里去敲命令吧;还有,当系统中的某一个计算功能,我在另一程序里已经做好了,想通过GUI程序直接调用它运行。那么,在这些情况下,如何通过GUI上的button来运行shell脚本和linux程序呢。下面将在mini6410上,通过一个范例来介绍如何在QT4 GUI程序里调用shell程序和运行应用程序。    通过本范例,可以测试用linux C库的函数来调用shell脚本和应用程序,也可以通过qt的函数来调用shell脚本和应用程序。还介绍了阻塞运行和非阻塞运行。介绍:    范例简介:基于mini6410 ...
距离上次发博文已经有一段不短的时间, 很不好意思, 一直忙于Creator翻译、Qt书籍翻译, 对博文撰写有些懈怠,现在其他事情都暂告段落, 笔者决心恢复写博文的热情, 争取多记录一些Qt的经验。 今天翻看以前写的blog, 发 ...
摘要:        QT4.7.0在移植到开发板上的时候,中文支持是必不可少的,如何让QT支持中文,如何制作QT支持的字体文件,如何使QT UI编辑器中的字号与开发板中的字号一致。作者通过实验进行了一一验证。 介绍:  1、初体验:    QT程序中指明的字体和字号在/fonts目录下没有对应的字库文件时,QT会选择某一个存在的字库文件来显示;那么,如果你的系统中只有需要一种字体和字号,那么则可以将fonts目录下不需要的字库文件全部删掉,只保留这个需要的字体文件即可。     上面是一种很方便的做法,无论程序中设置的字体和字号是怎样的,它始终都会按fonts目录下的这个唯一 ...
摘要:        由于工作的关系,作者有幸接触了QT,并开发了一个小软件;作者之前并没有做过上位机的程序,也是第一次使用QT,中间遇到过很多的问题,在这里记录下来,主要是一些对象的应用和需要注意的地方, ...
Global site tag (gtag.js) - Google Analytics