关闭

QT 随笔

标签: QT
504人阅读 评论(0) 收藏 举报



1. 设置窗口属性,无边框 | 置顶
setWindowFlags(Qt::FramelessWindowHint);
setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);

2. 槽-信号机制中用到自定义数据类型:

class MyTest
{
};
class MyThread: public QThread
{
 Q_OBJECT
signals:
 void thesignal(bool noerror, const MyTest& MyTest);
 
public:
 virtual void run(); 
};

除Q_OBJECT,需要加:
qRegisterMetaType<MyTest>("MyTest");

3. 槽函数中通过“QObject::sender()”获取谁发送的信号
QCheckBox* Chb = dynamic_cast<QCheckBox*>(QObject::sender());

4. Radio button 状态以图片方式显示
QString style = "QRadioButton { spacing: 5px; } QRadioButton::indicator{ width: 24px;height: 24px;}QRadioButton::indicator:unchecked{    image:url(:/radiobutton_off);}QRadioButton::indicator:checked{  image:url(:/radiobutton_on);} ";
ui.onceRadioBtn->setStyleSheet(style);
对checkbox控件也适用

5. 改变字体,可以直接使用windows下字体
Application theApp(argc, argv); 
theApp.setFont(QFont("simsun", 11));

6. 获取mac,ip
/* Get all interface (IP / Mask / MAC) */
QNetworkInterface InterfaceEth0 = QNetworkInterface::interfaceFromName("eth0");
QString mac = InterfaceEth0.hardwareAddress();
foreach(QNetworkAddressEntry addressE , InterfaceEth0.addressEntries()) {
 if(addressE.ip().protocol() == QAbstractSocket::IPv4Protocol &&
  addressE.broadcast() != QHostAddress::Null) {
   QString IP = addressE.ip().toString();
   QString Mask = addressE.netmask().toString();
   break;
 }
}

/* 获取所有网络接口 */
QList<QNetworkInterface> InterfaceEthList = QNetworkInterface::allInterfaces();


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:26983次
    • 积分:436
    • 等级:
    • 排名:千里之外
    • 原创:17篇
    • 转载:0篇
    • 译文:0篇
    • 评论:7条
    文章分类
    最新评论