qlistview 自定义控件_QT中QListView中放置自定义控件并添加滚动条

本文展示了如何在QT中使用QListView创建自定义控件,并添加滚动条功能。通过QListView子类化,实现了在窗口大小变化时动态调整控件布局,并附带了一个简单的例子来说明具体的实现步骤。
摘要由CSDN通过智能技术生成

转载 http://zhouzhenren163.blog.163.com/blog/static/6549928120140605729334/

效果如下图所示:

代码如下:

untitled.pro:

#-------------------------------------------------

#

# Project created by QtCreator 2015-12-03T15:32:15

#

#-------------------------------------------------

QT += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = untitled

TEMPLATE = app

SOURCES += main.cpp\

#mainwindow.cpp \

test.cpp \

mylistwidget.cpp \

mylistview.cpp \

mywinbox.cpp

HEADERS +=Enum.h \

test.h \

mylistwidget.h \

mylistview.h \

mywinbox.h\

#mainwindow.h \

FORMS += mainwindow.ui

Enum.h:

#ifndef ENUM_H

#define ENUM_H

enum MyEnum

{

GRAP = 2, //控件四周间隙,可更改;

WIDTH = 180+2*GRAP, //+2*GRAP不能更改,只能改前面的数字,如将400改为300或500,下同;

HEIGHT = 70+2*GRAP,

COUNT = 10

};

#endif // ENUM_H

mylistview.h:

#ifndef MYLISTVIEW_H

#define MYLISTVIEW_H

#include

#include

#include "MyWinBox.h"

class MyListView : public QListView

{

Q_OBJECT

public:

MyListView(QWidget *parent);

~MyListView();

public slots:

void ReSizeSlot(int row,int column);

public:

QList GetWinBoxList();

private:

QList m_WinBoxList;

};

#endif // MYLISTVIEW_Hmylistwidget.h:

#ifndef MYLISTWIDGET_H

#define MYLISTWIDGET_H

#include

#include

#include "MyListView.h"

class MyListWidget : public QWidget

{

Q_OBJECT

public:

MyListWidget(QWidget *parent);

~MyListWidget();

public:

MyListView* GetList();

private:

MyListView* m_L

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值