vimer linux kernel 爱好者

Qt基本操作

2022-01-23
qt

上手

如果是一个已经存在的qt项目,可以使用open目前的目录就可以。

编译

在 .pro文件中可以定义这些,注意自己的头文件放置位置。

code:

#-------------------------------------------------
#
# Project created by QtCreator 2021-03-02T15:53:39
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = AgoraCall3
TEMPLATE = app

# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0


SOURCES += \
        main.cpp \
      ...
        devicestestworker.cpp \
    capturedesktopworker.cpp

HEADERS += \
        agoracall.h \
        playmediaworker.h \
        captureaudioworker.h \
        capturevideoworker.h \
       ...
    capturedesktopworker.h

FORMS += \
        agoracall.ui \
        dialogstreamsetting.ui \
        localwindow.ui \
        dialogdevicestest.ui

INCLUDEPATH = += /usr/include/eswin ../agora_sdk ../agora_sdk/include ../include  .

contains(QMAKE_HOST.arch, aarch64) {
    LIBS += -L/usr/lib/eswin/aarch64 -leswinsdk -L../agora_sdk/lib/aarch64 -lagora_rtc_sdk
    QMAKE_RPATHDIR +=/usr/lib/eswin/aarch64 ../agora_sdk/lib/aarch64
} else {
    LIBS += -L/usr/lib/eswin/x86_64 -leswinsdk -L../agora_sdk/lib/x86_64 -lagora_rtc_sdk
    QMAKE_RPATHDIR +=/usr/lib/eswin/x86_64 ../agora_sdk/lib/x86_64
}

QMAKE_CXXFLAGS += -DTARGET_OS_LINUX=1 -DLICENSE_CHECK=1 -Wno-sign-compare -Wno-reorder -Wno-unused-variable -Wno-unused-parameter


TRANSLATIONS  = AgoraCall_zh_CN.ts
CODECFORSRC   = UTF-8

DESTDIR = ../009_QtAgoraCall3 # release 放置的路径

控件

比如我首先尝试一个 QPushButton 的按钮,名为 btnClose,那么,这个事件通知是通过 Sender Slot来进行描述的。

Sender就是这个按钮的名字,是选择的; Signal 是定义用户的行为;Receiver是QT接收到按键之后的行为;Slot()是系统表现出来的。

debug

#include 然后使用 qDebug() 输出打印即可。


下一篇 Qt demo例子

Comments

Content