student my; // student 就是类 my 就是对象
在堆里面定义: student *my = new student;
删除对象: delete my; 目的是释放堆里面的内存
my = NULL;
变成空指针,杜绝成为野指针。 student my;
student *my1 = new student;
my.age = 18;
my1->age =19;
cout << my.age << endl;
cout << my1->age << endl;
访问方法和 C 语言结构体是一样的,普通变量通过“ . ” 指针通过“ ->”。 class student
{
public:
char name[64];
int age;
void test(){
cout << 123 << endl;
};
};
写到类的外面:
class student
{
public:
char name[64];
int age;
void test();
};
void student::test(){ //student:表示属于这个类里面的函数,不加的话会被识别成普通函数。
cout << 123 << endl;
};
};
访问函数和访问变量是一样的。
下载后右键点击 exe 文件,选择以管理员身份运行。没有Qt的账号得先注册账号,点击下一步(或 next),选择安装路径。如下图。
选择下一步,勾选需要用到的组件,本阶段教程需要勾选以下七个选项:
选择完后一直点下一步,安装完成后如图 :
到此为止,Qt就安装完毕。
找到Qt的安装根目录Qt5.11.1ToolsQtCreatorbin,找到其应用程序 " ",也可以将其快捷方式发送到桌面。如下图。
图标为
打开后主界面如下图所示。
首先找开文件菜单,新建文件或项目,如下图。
或者 点击快捷按钮,新建工程。如下图。
打开后,如下图选择。
Widgets是在Qt中创建用户界面的主要元素,Widgets可以显示数据和状态信息,接收用户输入,并为其他应该分组在一起的Widget提供一个容器,没有嵌入父小部件的小部件称为窗口。
上一步选择操作后,填写项目名称,创建路径,下一步,不过不要有中文路径,如下图。
默认下一步之后,出现类信息的填写, 选择 " QWidget " 类名,如下图。 创建成功后,如下图。工程目录下的.pro 工程文件说明如下图。
点击 forms,然后双击用户界面 ui (User Interface,用户界面)文件,就可以进入 ui 编辑器。
下图为ui编辑器面板介绍。
选择信号类型。
双击上图选择单击信号类型,自动关联到其所对应的槽函数定义处。槽函数在.h 文件声明,槽函数只能声明到 private slots 或者 public slots 下面。 按住 Ctrl+鼠标左键,跳转到 .cpp 文件对应的函数功能实现部分。填写功能代码,我们在槽函数内用 qDebug 打印信息。保存,构建运行。如下图。
每次点击,按钮都会发信号,对应的槽函数就会执行,结果如下图。
connect(const QObject *sender, const char *signal,const QObject *receiver, const char *member,Qt::ConnectionType = Qt::AutoConnection);
通常只传递前四个参数,参数含义: sender :发送对象; singal :发送对象里面的一个信号,格式一般为 SIGNAL( 信号 ); receiver :接收对象; member :接收对象里面的槽函数,格式一般为 SLOT( 信号 ) 。 ConnectionType :设置信号和槽的同步异步 , 一般使用默认值 Qt::AutoConnection,可不填。 connect(A,SIGNAL(B),C,SLOT(D)); 当对象 A 发出 B 信号时候,就会触发对象 C 的槽函数 D signals, 是 Qt 的关键字,而非 C/C++ 的。 signals 关键字指出进入了信号声明区,随后即可声明自己 的信号。 slots, 槽是普通的 C++ 成员函数,当与其关联的信号被发射时,这个槽函数就会被调用。槽函数有的 参数个数和类型,在对应的信号函数中必须一一对应,即信号函数的参数个数必须多于或等于槽函数的个数。 emit ,Qt 定义的一个宏,作用是发射信号,与此信号关联的槽函数就会被调用 。 例程:我们在 widget.h 中自定义一个信号和一个槽函数,如下图。 源代码为: signals:void my_signal(void); //自定义的信号private slots:void on_pushButton_clicked();void my_slot(void);//自定义的槽函数
并在 widget.cpp 实现槽函数,如下图。 源代码为: void Widget::my_slot(void)
{
qDebug("再按下");
}
然后在 widget.cpp 中绑定信号和槽,如下 图 源代码为: Widget::Widget(QWidget *parent) :QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);connect(this,SIGNAL(my_signal()),this,SLOT(my_slot()));
}
在 widget.ui 中创建按钮,并转到槽,自动关联的槽函数如下图。 发射信号,如下图。 源代码为: void Widget::on_pushButton_2_clicked()
{emit my_slot();
}
构建项目,运行,点击按钮,就会发射自定义的信号 my_Signal() ,与 my_Signal() 相关联的 this 对象槽函数 my_Solt 就会被调用,槽函数就会输出打印出信息 “ 再按下 ”。如下图。 下面给出widget.h完整代码截图:
给出widget.cpp完整代码截图:
在弹出窗口中选择 Qt—>Qt Resource File ,选择 Choose ,如下图。
填写写资源名称,如下图。 填写 picture 后,在工程下的 Resources 会出现 picture.qrc 文件,成功后如下图 。 双击 picture.qrc ,点击 “ 添加前缀 ”。
前缀可以根据需要自定义填入,如下图。
在资源编辑器中会看到添加的图片,然后ctrl+s保存。
点开 Resources 下的各个文件夹,即可看到添加的图片,此时图片已经添加到工程。
弹出对话框,选择添加资源->border image,如下图。
选择要添加的图片,如下图。
点击 OK,即可完成图片的添加,如下图。
本文发布于:2024-01-29 08:41:07,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170648887014065.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |