Qt TableWidget翻页功能 点击item项加载图片

思路:把路径保存在QVector中,给TableWidget添加添加序号列,点击item,读取当前选择的页面数,去QVector中获取路径,加载图片显示在图片控件中。

表格底下的4个按钮页放在group中,联动实现只能选中一个高亮。

.h

public:
void appendTableItem(int index, const char * name,int nserial);
	
void clearTableItems(int index);

private:
QVector <QString> m_exInfo;
QVector <QString> m_listpicvideo;
QVector <QString> m_listattachment;

int m_nListTopPage;
int m_nListBottomPage;

int m_nTopSelectedPage;
int m_nBottomSelectedPage;

public slots:
void show_img_list1(int row,int col);
void show_img_list2(int row, int col);
void OnBtnTableDeleteClicked1();
void OnBtnTableDeleteClicked2();

.cpp

popDataLabel::popDataLabel()
{
    m_nListTopPage = 0;
	m_nListBottomPage = 0;

	m_nTopSelectedPage = 1;
	m_nBottomSelectedPage = 1;
}

点击上一页按钮,响应clicked

if (index == eScbtn_previouspage_list1)
	{
		if (m_nTopSelectedPage != 1)
		{
			m_nTopSelectedPage = m_nTopSelectedPage - 1;

			int nSelectedTopPage = BtnGroupB->checkedId();
			if ((m_nListTopPage > 4) && (nSelectedTopPage == 0))
			{
				QString strBtn1Num = QString::number(m_nTopSelectedPage);
				QString strBtn2Num = QString::number(m_nTopSelectedPage + 1);
				QString strBtn3Num = QString::number(m_nTopSelectedPage + 2);
				QString strBtn4Num = QString::number(m_nTopSelectedPage + 3);

				QByteArray charBtn1 = strBtn1Num.toLatin1();
				QByteArray charBtn2 = strBtn2Num.toLatin1();
				QByteArray charBtn3 = strBtn3Num.toLatin1();
				QByteArray charBtn4 = strBtn4Num.toLatin1();

				const char* cBtn1Num = charBtn1.data();
				const char* cBtn2Num = charBtn2.data();
				const char* cBtn3Num = charBtn3.data();
				const char* cBtn4Num = charBtn4.data();

				setBottomBtnNum(eRkbtn_biaoqian_picvideo_list1, cBtn1Num, cBtn2Num, cBtn3Num, cBtn4Num);
			}
			else
			{
				QAbstractButton * checkBtn = BtnGroupB->button(nSelectedTopPage - 1);
				checkBtn->setChecked(true);
			}
			updatePicUI();
		}

点击page页数按钮

if (index == eScbtn_page1_list1)
	{
		m_nTopSelectedPage = ((QPushButton*)m_btnsIndex[eScbtn_page1_list1])->text().toInt();
		updatePicUI();
	}
	else if (index == eScbtn_page2_list1)
	{
		m_nTopSelectedPage = ((QPushButton*)m_btnsIndex[eScbtn_page2_list1])->text().toInt();
		updatePicUI();
	}

点击下一页,响应nextpage

if (index == eScbtn_nextpage_list1)
	{
		if (m_nTopSelectedPage != m_nListTopPage)
		{
			m_nTopSelectedPage = m_nTopSelectedPage + 1;
			
			int nSelectedTopPage = BtnGroupB->checkedId();
			if ((m_nListTopPage > 4) && (nSelectedTopPage == 3))
			{
				QString strBtn1Num = QString::number(m_nTopSelectedPage);
				QString strBtn2Num = QString::number(m_nTopSelectedPage - 1);
				QString strBtn3Num = QString::number(m_nTopSelectedPage - 2);
				QString strBtn4Num = QString::number(m_nTopSelectedPage - 3);

				QByteA
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

My点点滴滴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值