-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathddmTableView.cpp
72 lines (56 loc) · 1.88 KB
/
ddmTableView.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <QResizeEvent>
#include <QMessageBox>
#include "ddmTableView.h"
#include "ui_ddmtableview.h"
ddmTableView::ddmTableView( QWidget *parent ):
QDialog(parent),
ui(new Ui::ddmTableView)
{
ui->setupUi(this);
this->setWindowTitle( QObject::tr( "Таблица отображения данных" ) );
m_model = new ddmTableViewModel();
QHeaderView *horizontalHeader = ui->tableView->horizontalHeader();
horizontalHeader->sectionResizeMode( QHeaderView::Fixed );
int colums = 3, diff = 10;
int headerSize = ( this->size().width()/colums ) - diff;
horizontalHeader->setDefaultSectionSize( headerSize );
ui->tableView->horizontalHeader()->setSectionsMovable( true );
ui->tableView->horizontalHeader()->resizeSections( QHeaderView::Stretch );
ui->tableView->setModel( m_model );
installEventFilter();
}
ddmTableView::~ddmTableView()
{
delete ui;
}
void ddmTableView::resizeEvent( QResizeEvent *event )
{
int colums = 3, diff = 10;
int headerSize = ( event->size().width()/colums ) - diff;
QHeaderView *horizontalHeader = ui->tableView->horizontalHeader();
horizontalHeader->setDefaultSectionSize( headerSize );
}
void ddmTableView::installEventFilter()
{
connect( ui->pbImportData, SIGNAL( clicked() ), this, SLOT( slotImportData() ) );
connect( ui->pbExportData, SIGNAL( clicked() ), this, SLOT( slotExportData() ) );
connect( ui->pbPrint, SIGNAL( clicked() ), this, SLOT( slotPrint() ) );
}
void ddmTableView::slotImportData()
{
QMessageBox mb;
mb.setText( QObject::tr( "Слот импорта данных" ) );
mb.exec();
}
void ddmTableView::slotExportData()
{
QMessageBox mb;
mb.setText( QObject::tr( "Слот экспорта данных" ) );
mb.exec();
}
void ddmTableView::slotPrint()
{
QMessageBox mb;
mb.setText( QObject::tr( "Слот печати" ) );
mb.exec();
}