亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1071 | 回復(fù): 0
打印 上一主題 下一主題

A QT4 program to make a beep [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2007-11-16 20:57 |只看該作者 |倒序?yàn)g覽
A QT4 program that can make a beep when you click the button.
/***************************************************************************
**   Copyright (C) 2007 by Meng Renzhou
**   ship_@163.com
**
**   This program is free software; you can redistribute it and/or modify
**   it under the terms of the GNU General Public License as published by
**   the Free Software Foundation; either version 2 of the License, or
**   (at your option) any later version.
**
**   This program is distributed in the hope that it will be useful,
**   but WITHOUT ANY WARRANTY; without even the implied warranty of
**   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
**   GNU General Public License for more details.
**
**   You should have received a copy of the GNU General Public License
**   along with this program; if not, write to the
**   Free Software Foundation, Inc.,
**   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
****************************************************************************/
#ifndef BELL_H
#define BELL_H
#include QObject>
class Bell : public QObject
{
    Q_OBJECT;
   
public:
    Bell(QObject * parent = 0);
    Bell(char * fdev, QObject * parent = 0);
    ~Bell();
   
    int Open(const char *fdev);
    void Close();
   
public slots:
    void MakeBell();
    void StartTone(int arg);
    void StopTone();
   
protected:
    int fd;
   
private:
    bool toning;
};
#endif
/***************************************************************************
**   Copyright (C) 2007 by Meng Renzhou
**   ship_@163.com
**
**   This program is free software; you can redistribute it and/or modify
**   it under the terms of the GNU General Public License as published by
**   the Free Software Foundation; either version 2 of the License, or
**   (at your option) any later version.
**
**   This program is distributed in the hope that it will be useful,
**   but WITHOUT ANY WARRANTY; without even the implied warranty of
**   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
**   GNU General Public License for more details.
**
**   You should have received a copy of the GNU General Public License
**   along with this program; if not, write to the
**   Free Software Foundation, Inc.,
**   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
****************************************************************************/
#include fcntl.h>
#include stdio.h>
#include stdlib.h>
#include sys/ioctl.h>
#include sys/types.h>
#include linux/kd.h>
#include "bell.h"
Bell::Bell(QObject * parent) : QObject(parent)
{
    fd = -1;
    toning = 0;
}
Bell::Bell(char * fdev,QObject * parent) : QObject(parent)
{
    fd = -1;
    toning = 0;
    Open(fdev);
}
int Bell::Open(const char *fdev)
{
    fd = open(fdev, O_WRONLY);
    if (fd == -1) return -1;
    return 0;
}
void Bell::Close()
{
    close(fd);
}
void Bell::MakeBell()
{
    ioctl(fd, KDMKTONE, (2000 | (300  16)));
}
void Bell::StartTone( int arg)
{
    if (!toning)
        ioctl(fd, KIOCSOUND, arg);
    toning = 1;
}
void Bell::StopTone(void)
{
    if (toning)
        ioctl(fd, KIOCSOUND, 0);
    toning = 0;
}
Bell::~Bell()
{
    Close();
}
/***************************************************************************
**   Copyright (C) 2007 by Meng Renzhou
**   ship_@163.com
**
**   This program is free software; you can redistribute it and/or modify
**   it under the terms of the GNU General Public License as published by
**   the Free Software Foundation; either version 2 of the License, or
**   (at your option) any later version.
**
**   This program is distributed in the hope that it will be useful,
**   but WITHOUT ANY WARRANTY; without even the implied warranty of
**   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
**   GNU General Public License for more details.
**
**   You should have received a copy of the GNU General Public License
**   along with this program; if not, write to the
**   Free Software Foundation, Inc.,
**   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
****************************************************************************/
#include QApplication>
#include QFont>
#include QPushButton>
#include "bell.h"
            
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QPushButton mktone("Make Tone");
    Bell bell("/dev/console", &mktone);
   
    mktone.resize(150, 50);
    mktone.setFont(QFont("Times", 18, QFont::Bold));
    QObject::connect(&mktone, SIGNAL(clicked()), &bell, SLOT(MakeBell()));
    mktone.show();
    return app.exec();
}


本文來自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u/3272/showart_424273.html
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP