Advertisement
andry258852

Untitled

Dec 12th, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.19 KB | None | 0 0
  1. //cpp.......................................
  2.  
  3. #include "mainwindow.h"
  4. #include "ui_mainwindow.h"
  5. #include <QFile>
  6. #include <QTableView>
  7. #include <QHeaderView>
  8. #include <QSizePolicy>
  9. #include <QTableWidgetItem>
  10. #include <QTableWidget>
  11. #include <QFileDialog>
  12. #include <QIcon>
  13.  
  14. #include <QStandardPaths>
  15. #include <QKeyEvent>
  16. #include <QTextStream>
  17. #include <fstream>
  18. #include <QTextCursor>
  19. #include <QColor>
  20. #include <QTextCodec>
  21. MainWindow::MainWindow(QWidget *parent)
  22. : QMainWindow(parent)
  23. , ui(new Ui::MainWindow)
  24. {
  25. ui->setupUi(this);
  26.  
  27. QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
  28.  
  29. this->setMinimumWidth(1300);
  30. this->setMaximumWidth(1300);
  31. this->setMinimumHeight(700);
  32. this->setMaximumHeight(700);
  33.  
  34. ui -> tableWidget -> setMinimumWidth(1000);
  35.  
  36.  
  37. ui -> tableWidget -> setMouseTracking(1);
  38. ui -> tableWidget_2 -> setMouseTracking(1);
  39. ui->tableWidget -> setEditTriggers ( QAbstractItemView :: NoEditTriggers );
  40.  
  41. ui -> tableWidget ->setTabKeyNavigation(1);
  42.  
  43. ui -> tableWidget ->verticalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
  44. ui -> tableWidget ->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
  45.  
  46. ui -> upper -> setEnabled(0);
  47. ui -> downer -> setEnabled(0);
  48. ui -> tableWidget -> setEnabled(0);
  49. ui -> addElement -> setEnabled(0);
  50. ui -> deleteElement -> setEnabled(0);
  51. ui -> textEdit -> setEnabled(0);
  52. ui -> accept -> setEnabled(0);
  53. ui -> saver -> setEnabled(0);
  54. ui -> comboBox -> setEnabled(0);
  55.  
  56. ui -> upper -> setIcon(QIcon("E:/QT/Projects/build-untitled8-Desktop_Qt_5_12_0_MSVC2017_32bit-Debug/upper.png"));
  57. ui -> downer -> setIcon(QIcon("E:/QT/Projects/build-untitled8-Desktop_Qt_5_12_0_MSVC2017_32bit-Debug/downer.png"));
  58. ui -> addElement -> setIcon(QIcon("E:/QT/Projects/build-untitled8-Desktop_Qt_5_12_0_MSVC2017_32bit-Debug/plus.png"));
  59. ui -> deleteElement -> setIcon(QIcon("E:/QT/Projects/build-untitled8-Desktop_Qt_5_12_0_MSVC2017_32bit-Debug/minus.png"));
  60. ui -> accept -> setIcon(QIcon("E:/QT/Projects/build-untitled8-Desktop_Qt_5_12_0_MSVC2017_32bit-Debug/success.png"));
  61. ui -> opener -> setIcon(QIcon("E:/QT/Projects/build-untitled8-Desktop_Qt_5_12_0_MSVC2017_32bit-Debug/open.png"));
  62. ui -> saver -> setIcon(QIcon("E:/QT/Projects/build-untitled8-Desktop_Qt_5_12_0_MSVC2017_32bit-Debug/save.png"));
  63. ui -> creater -> setIcon(QIcon("E:/QT/Projects/build-untitled8-Desktop_Qt_5_12_0_MSVC2017_32bit-Debug/new.png"));
  64.  
  65. QTableWidgetItem *item = new QTableWidgetItem();
  66. QTableWidgetItem *item1 = new QTableWidgetItem();
  67. QTableWidgetItem *item2 = new QTableWidgetItem();
  68. QTableWidgetItem *item3 = new QTableWidgetItem();
  69. item -> setText("Номер телефона\nгорода");
  70. ui -> tableWidget -> setHorizontalHeaderItem(5, item);
  71. item1 -> setText("Номер телефона\nабонента");
  72. ui -> tableWidget -> setHorizontalHeaderItem(6, item1);
  73. item2 -> setText("Название\nгорода");
  74. ui -> tableWidget -> setHorizontalHeaderItem(2, item2);
  75. item3 -> setText("Время\nразговора");
  76. ui -> tableWidget -> setHorizontalHeaderItem(3, item3);
  77. }
  78.  
  79. MainWindow::~MainWindow()
  80. {
  81. delete ui;
  82. }
  83.  
  84. MyClass* adder(MyClass* call,int n) {
  85. MyClass* b = new MyClass[n];
  86. for (int i = 0; i < n - 1; i++) {
  87. b[i].MyClass::set(call[i].MyClass::Getdate(),call[i].MyClass::Getcode(),call[i].MyClass::Getname(),call[i].MyClass::Gettime(),call[i].MyClass::Getrate(),call[i].MyClass::Getnumber(),call[i].MyClass::Getnumuser());
  88. }
  89. b[n - 1].MyClass::set("","","","","","","");
  90. return b;
  91. }
  92.  
  93. MyClass* deleter(MyClass* call,int n, int row) {
  94. MyClass* b = new MyClass[n - 1];
  95. for (int i = 0; i < row; i++) {
  96. b[i].MyClass::set(call[i].MyClass::Getdate(),call[i].MyClass::Getcode(),call[i].MyClass::Getname(),call[i].MyClass::Gettime(),call[i].MyClass::Getrate(),call[i].MyClass::Getnumber(),call[i].MyClass::Getnumuser());
  97. }
  98. for (int i = row + 1; i < n; i++) {
  99. b[i - 1].MyClass::set(call[i].MyClass::Getdate(),call[i].MyClass::Getcode(),call[i].MyClass::Getname(),call[i].MyClass::Gettime(),call[i].MyClass::Getrate(),call[i].MyClass::Getnumber(),call[i].MyClass::Getnumuser());
  100. }
  101. return b;
  102. }
  103.  
  104. void MainWindow::on_opener_triggered()
  105. {
  106. //QString file = QFileDialog::getExistingDirectory(this, tr("Open Directory")), QFileDialog::showDirsOnly | QFileDialog::DontResolveSyslinks);
  107. /*QList<QUrl> urls;
  108. urls << QUrl::fromLocalFile("E:/QT/Projects/untitled8/my");
  109. QFileDialog file;
  110. file*/
  111. //QFile file(":/new/prefix1/my/hello.txt");
  112. QString filename = QFileDialog::getOpenFileName(
  113. this,
  114. "Открыть документ",
  115. //QDir::currentPath(),
  116. "E:/QT/Projects/untitled8/my",
  117. "Text files (*.txt) ;; csv files (*.csv)"
  118. );
  119.  
  120. name = filename;
  121.  
  122. QFile file(filename);
  123. int i = 0;
  124. if ((file.exists())&&(file.open(QIODevice::ReadOnly | QIODevice::Text)))
  125. {
  126. QString str;
  127. while(!file.atEnd()) {
  128. addElement();
  129. QString str;
  130. QString dd = file.readLine();
  131. str = dd.split(';')[0];
  132. call[i].Setdate(str.simplified());
  133.  
  134. str = dd.split(';')[1];
  135. call[i].Setcode(str.simplified());
  136.  
  137. str = dd.split(';')[2];
  138. call[i].Setname(str.simplified());
  139.  
  140. str = dd.split(';')[3];
  141. call[i].Settime(str.simplified());
  142.  
  143. str = dd.split(';')[4];
  144. call[i].Setrate(str.simplified());
  145.  
  146. str = dd.split(';')[5];
  147. call[i].Setnumber(str.simplified());
  148.  
  149. str = dd.split(';')[6];
  150. call[i].Setnumuser(str.simplified());
  151.  
  152. i++;
  153.  
  154. }
  155. file.close();
  156.  
  157.  
  158. ui -> tableWidget -> setEnabled(1);
  159. ui -> addElement -> setEnabled(1);
  160. ui -> textEdit -> setEnabled(1);
  161. ui -> upper -> setEnabled(1);
  162. ui -> downer -> setEnabled(1);
  163. ui -> saver -> setEnabled(1);
  164. ui -> accept -> setEnabled(1);
  165. ui -> comboBox -> setEnabled(1);
  166. re();
  167. }
  168.  
  169. }
  170. void MainWindow::addElement() {
  171. mainNumber++;
  172. call = adder(call, mainNumber);
  173. ui -> tableWidget -> insertRow(ui -> tableWidget -> rowCount());
  174. for (int j = 0; j < ui -> tableWidget -> columnCount(); j++)
  175. {
  176. ui -> tableWidget -> setItem(ui -> tableWidget -> rowCount() - 1, j,new QTableWidgetItem(""));
  177. }
  178. ui -> deleteElement -> setEnabled(1);
  179. }
  180. void MainWindow::on_addElement_clicked()
  181. {
  182. addElement();
  183. }
  184.  
  185. void MainWindow::on_deleteElement_clicked()
  186. {
  187. QModelIndexList gg = ui->tableWidget->selectionModel()->selectedIndexes();
  188. while (!gg.empty())
  189. { if (gg[0].row() == Row)
  190. ui ->textEdit -> clear();
  191. call = deleter (call,mainNumber,gg[0].row());
  192. ui->tableWidget->removeRow(gg[0].row());
  193. gg = ui->tableWidget->selectionModel()->selectedIndexes();
  194. mainNumber--;
  195. }
  196. if (mainNumber == 0) {
  197. ui -> deleteElement -> setEnabled(0);
  198. }
  199. myRow = -1;
  200. }
  201.  
  202. void MainWindow::on_tableWidget_cellClicked(int row, int column)
  203. {
  204. Row = row;
  205. Column = column;
  206. ui -> textEdit -> setText(ui -> tableWidget -> item(row, column) -> text());
  207. ui -> textEdit -> setFocus();
  208. ui -> textEdit -> moveCursor(QTextCursor::End);
  209. //ui -> tableWidget -> selectRow(row);
  210. ui -> accept -> setEnabled(1);
  211. }
  212.  
  213. void MainWindow::on_textEdit_textChanged()
  214. {
  215. QTableWidgetItem *item = new QTableWidgetItem();
  216. item->setText(ui -> textEdit -> toPlainText());
  217. ui -> tableWidget -> setItem(Row, Column, item);
  218. record(Row,Column,ui -> textEdit -> toPlainText());
  219. QModelIndexList gg = ui->tableWidget->selectionModel()->selectedIndexes();
  220. }
  221.  
  222. void MainWindow::on_tableWidget_cellEntered(int row, int column)
  223. {
  224. /*for (int i = 0; i < ui -> tableWidget -> columnCount(); i++)
  225. ui -> tableWidget -> item(row, i)->setBackground(Qt::gray);
  226. for (int j = 0; j < mainNumber; j++)
  227. for (int i = 0; i < ui -> tableWidget -> columnCount(); i++)
  228. if (j != row) {
  229. ui -> tableWidget -> item(j, i)->setBackground(Qt::white);
  230. }*/
  231. if (myRow != -1)
  232. for (int i = 0; i < ui -> tableWidget -> columnCount(); i++)
  233. ui -> tableWidget -> item(myRow, i)->setBackground(QColor::fromRgb(51, 51, 51));
  234. for (int i = 0; i < ui -> tableWidget -> columnCount(); i++)
  235. ui -> tableWidget -> item(row, i)->setBackground(QColor::fromRgb(100, 100, 100));
  236. myRow = row;
  237. }
  238.  
  239. void MainWindow::on_tableWidget_viewportEntered()
  240.  
  241. {
  242. /* for (int j = 0; j < mainNumber; j++)
  243. for (int i = 0; i < ui -> tableWidget -> columnCount(); i++)
  244. ui -> tableWidget -> item(j, i)->setBackground(Qt::white);*/
  245. if (myRow != -1)
  246. for (int i = 0; i < ui -> tableWidget -> columnCount(); i++)
  247. ui -> tableWidget -> item(myRow, i)->setBackground(QColor::fromRgb(51, 51, 51));
  248. }
  249.  
  250. void MainWindow::record(int row, int column, QString value) {
  251.  
  252. if (column == 0)
  253. call[row].Setdate(value);
  254. else if (column == 1)
  255. call[row].Setcode(value);
  256. else if (column == 2)
  257. call[row].Setname(value);
  258. else if (column == 3)
  259. call[row].Settime(value);
  260. else if (column == 4)
  261. call[row].Setrate(value);
  262. else if (column == 5)
  263. call[row].Setnumber(value);
  264. else if (column == 6)
  265. call[row].Setnumuser(value);
  266. }
  267.  
  268.  
  269. void MainWindow::re() {
  270. QTableWidgetItem *item;
  271. for (int i = 0; i < mainNumber; i++) {
  272. item = new QTableWidgetItem();
  273. item->setText(call[i].Getdate());
  274. ui -> tableWidget -> setItem(i, 0, item);
  275.  
  276. item = new QTableWidgetItem();
  277. item->setText(call[i].Getcode());
  278. ui -> tableWidget -> setItem(i, 1, item);
  279.  
  280. item = new QTableWidgetItem();
  281. item->setText(call[i].Getname());
  282. ui -> tableWidget -> setItem(i, 2, item);
  283.  
  284. item = new QTableWidgetItem();
  285. item->setText(call[i].Gettime());
  286. ui -> tableWidget -> setItem(i, 3, item);
  287.  
  288. item = new QTableWidgetItem();
  289. item->setText(call[i].Getrate());
  290. ui -> tableWidget -> setItem(i, 4, item);
  291.  
  292. item = new QTableWidgetItem();
  293. item->setText(call[i].Getnumber());
  294. ui -> tableWidget -> setItem(i, 5, item);
  295.  
  296. item = new QTableWidgetItem();
  297. item->setText(call[i].Getnumuser());
  298. ui -> tableWidget -> setItem(i, 6, item);
  299. }
  300. }
  301.  
  302.  
  303. void MainWindow::on_tableWidget_cellDoubleClicked(int row, int column)
  304.  
  305. {
  306. QTableWidgetItem *item = new QTableWidgetItem();
  307. item->setText("");
  308. ui -> tableWidget -> setItem(row, column, item);
  309.  
  310. record(row,column,"");
  311. }
  312.  
  313. void MainWindow::on_saver_triggered()
  314.  
  315. {
  316. QFile file(name);
  317. QTextStream stream(&file);
  318. file.open(QIODevice::Append | QIODevice::Text | QIODevice::Truncate);
  319. //const char *chStr;
  320. for (int i = 0; i < mainNumber; i++) {
  321. stream << call[i].Getdate() << ";";
  322. stream << call[i].Getcode() << ";";
  323. stream << call[i].Getname() << ";";
  324. stream << call[i].Gettime() << ";";
  325. stream << call[i].Getrate() << ";";
  326. stream << call[i].Getnumber() << ";";
  327. if (i != mainNumber - 1)
  328. stream << call[i].Getnumuser() << ";" << endl;
  329. else
  330. stream << call[i].Getnumuser();
  331. }
  332. //file.flush();
  333. file.close();
  334. }
  335.  
  336. void MainWindow::on_accept_clicked()
  337. {
  338. ui -> accept -> setEnabled(0);
  339. ui -> tableWidget -> setFocus();
  340. }
  341.  
  342.  
  343.  
  344. void MainWindow::on_tableWidget_2_viewportEntered()
  345. {
  346. /*for (int j = 0; j < mainNumber; j++)
  347. for (int i = 0; i < ui -> tableWidget -> columnCount(); i++)
  348. ui -> tableWidget -> item(j, i)->setBackground(Qt::white);*/
  349. if (myRow != -1)
  350. for (int i = 0; i < ui -> tableWidget -> columnCount(); i++)
  351. ui -> tableWidget -> item(myRow, i)->setBackground(QColor::fromRgb(51, 51, 51));
  352. }
  353.  
  354.  
  355. void MainWindow::on_comboBox_activated(const QString &arg1)
  356. {
  357. QModelIndex index =ui->comboBox -> model() -> index(0,0);
  358. QVariant v(0);
  359. ui -> comboBox -> model() -> setData( index, v, Qt::UserRole -1);
  360.  
  361. QList<QString> a;
  362. int s = 0;
  363. if (arg1 == "по дате") {
  364. for (int i = 0; i < mainNumber;i++) {
  365. if (!call[i].Getdate().isEmpty())
  366. a.append(call[i].Getdate());
  367. else {
  368. a.append("яяяяя");
  369. s++;
  370. }
  371. }
  372. if (s != mainNumber)
  373. changer(a);
  374. }
  375. if (arg1 == "по названию") {
  376. for (int i = 0; i < mainNumber;i++) {
  377. if (!call[i].Getname().isEmpty())
  378. a.append(call[i].Getname());
  379. else {
  380. a.append("яяяяя");
  381. s++;
  382. }
  383. }
  384. if (s != mainNumber)
  385. Sorter(a);
  386. }
  387.  
  388. if (arg1 == "по номеру города") {
  389. for (int i = 0; i < mainNumber;i++) {
  390. if (!call[i].Getnumber().isEmpty())
  391. a.append(call[i].Getnumber());
  392. else {
  393. a.append("яяяяя");
  394. s++;
  395. }
  396. }
  397. if (s != mainNumber)
  398. Sorter(a);
  399. }
  400.  
  401. if (arg1 == "по номеру абонента") {
  402. for (int i = 0; i < mainNumber;i++) {
  403. if (!call[i].Getnumuser().isEmpty())
  404. a.append(call[i].Getnumuser());
  405. else {
  406. a.append("яяяяя");
  407. s++;
  408. }
  409. }
  410. if (s != mainNumber)
  411. Sorter(a);
  412. }
  413.  
  414. if (arg1 == "по коду") {
  415. for (int i = 0; i < mainNumber;i++) {
  416. if (!call[i].Getcode().isEmpty())
  417. a.append(call[i].Getcode());
  418. else {
  419. a.append("яяяяя");
  420. s++;
  421. }
  422. }
  423. if (s != mainNumber)
  424. Sorter(a);
  425. }
  426.  
  427. if (arg1 == "по тарифу") {
  428. for (int i = 0; i < mainNumber;i++) {
  429. if (!call[i].Getrate().isEmpty())
  430. a.append(call[i].Getrate());
  431. else {
  432. a.append("яяяяя");
  433. s++;
  434. }
  435. }
  436. if (s != mainNumber)
  437. Sorter(a);
  438. }
  439.  
  440. if (arg1 == "по продолжительности") {
  441. for (int i = 0; i < mainNumber;i++) {
  442. if (!call[i].Gettime().isEmpty())
  443. a.append(call[i].Gettime());
  444. else {
  445. a.append("яяяяя");
  446. s++;
  447. }
  448. }
  449. if (s != mainNumber)
  450. Sorter(a);
  451. }
  452. re();
  453. }
  454.  
  455. void MainWindow::Sorter(QList<QString> a) {
  456. QList<QString> b = a;
  457. b.sort();
  458. QString ff;
  459. for (int i = 0; i < mainNumber; i++)
  460. for (int j = 0; j < mainNumber; j++) {
  461. if (i != j)
  462. if (b.at(i) == a.at(j)) {
  463. swaper(i , j);
  464. ff = a.at(j);
  465. a[j] = a.at(i);
  466. a[i] = ff;
  467. break;
  468. }
  469. }
  470. // for (int i = 0;)
  471. // for(int j = i + 1; j < mainNumber; j++)
  472. // if(strcmp(a.at(i),a.at(j))>0)
  473. // {
  474. // tt = a.at(i);
  475. // a[i] = a.at(j);
  476. // a[j] = tt;
  477. // swaper(i,j);
  478. // }
  479. // QString h = "";
  480. // for (int i = 0; i < mainNumber; i++)
  481. // h = h + a.at(i);
  482. //ui -> label -> setText(h);
  483.  
  484. //.append(h + f.at(6) + f.at(7) + f.at(8) + f.at(9) + f.at(3) + f.at(4) + f.at(0) + f.at(1));
  485. //h = h + f.at(6) + f.at(7) + ":" + f.at(4) + f.at(5) + ":" + f.at(0) + f.at(1) + f.at(2) + f.at(3);
  486. /*QList<QString> a;
  487. QList<char*> b;
  488. for (int i = 0; i < mainNumber;i++) {
  489. a.append(call[i].Getdate());*/
  490. }
  491.  
  492.  
  493. void MainWindow::swaper(int row1, int row2) {
  494. QString a = call[row1].Getdate();
  495. QString b = call[row2].Getdate();
  496. call[row1].Setdate(b);
  497. call[row2].Setdate(a);
  498.  
  499. a = call[row1].Getcode();
  500. b = call[row2].Getcode();
  501. call[row1].Setcode(b);
  502. call[row2].Setcode(a);
  503.  
  504. a = call[row1].Getname();
  505. b = call[row2].Getname();
  506. call[row1].Setname(b);
  507. call[row2].Setname(a);
  508.  
  509. a = call[row1].Gettime();
  510. b = call[row2].Gettime();
  511. call[row1].Settime(b);
  512. call[row2].Settime(a);
  513.  
  514. a = call[row1].Getrate();
  515. b = call[row2].Getrate();
  516. call[row1].Setrate(b);
  517. call[row2].Setrate(a);
  518.  
  519. a = call[row1].Getnumber();
  520. b = call[row2].Getnumber();
  521. call[row1].Setnumber(b);
  522. call[row2].Setnumber(a);
  523.  
  524. a = call[row1].Getnumuser();
  525. b = call[row2].Getnumuser();
  526. call[row1].Setnumuser(b);
  527. call[row2].Setnumuser(a);
  528. }
  529.  
  530. void MainWindow::on_upper_clicked()
  531.  
  532. {
  533. QModelIndexList gg = ui->tableWidget->selectionModel()->selectedIndexes();
  534. if (!gg.empty())
  535. if (gg[0].row()!=0) {
  536. swaper (gg[0].row(),gg[0].row() - 1);
  537. }
  538. if (!gg.empty())
  539. if (gg[0].row()!=0)
  540. ui -> tableWidget -> QTableView::selectRow(gg[0].row() - 1);
  541. re();
  542. }
  543. void MainWindow::on_downer_clicked()
  544. {
  545. QModelIndexList gg = ui->tableWidget->selectionModel()->selectedIndexes();
  546. if (!gg.empty())
  547. if (gg[0].row()!=mainNumber - 1) {
  548. swaper (gg[0].row(),gg[0].row() + 1);
  549. }
  550. if (!gg.empty())
  551. if (gg[0].row()!=mainNumber - 1)
  552. ui -> tableWidget -> QTableView::selectRow(gg[0].row() + 1);
  553. re();
  554. }
  555.  
  556. void MainWindow::changer(QList<QString> a) {
  557. QString f, h;
  558. QList<QString> b;
  559. for (int i = 0; i < mainNumber; i++) {
  560. f = a.at(i);
  561. h = "";
  562. if ((f != "яяяяя") && (!f.at(9).isNull())) {
  563. b.append(h + f.at(6) + f.at(7) +f.at(8) + f.at(9) + f.at(3) + f.at(4) + f.at(0) + f.at(1));
  564. }
  565. else
  566. b.append("яяяяя");
  567. }
  568. b.sort();
  569.  
  570. for (int i = 0; i < mainNumber; i++) {
  571. f = b.at(i);
  572. h = "";
  573. if (f != "яяяяя") {
  574. b[i] = h + f.at(6) + f.at(7) + ":" + f.at(4) + f.at(5) + ":" + f.at(0) + f.at(1) + f.at(2) + f.at(3);
  575. }
  576. }
  577.  
  578. QString ff;
  579. for (int i = 0; i < mainNumber; i++)
  580. for (int j = 0; j < mainNumber; j++) {
  581. if (i != j)
  582. if (b.at(i) == a.at(j)) {
  583. swaper(i , j);
  584. ff = a.at(j);
  585. a[j] = a.at(i);
  586. a[i] = ff;
  587. break;
  588. }
  589. }
  590. }
  591.  
  592.  
  593. void MainWindow::on_creater_triggered()
  594. {
  595. QFileDialog dialog;
  596. //dialog.setFileMode(QFileDialog::AnyFile);
  597. QString strFile = dialog.getSaveFileName(this, "Создать новый файл","E:/QT/Projects/untitled8/my","Text files (*.txt) ;; csv files (*.csv)");
  598. name = strFile;
  599. if (name != "") {
  600. ui -> tableWidget -> setEnabled(1);
  601. ui -> addElement -> setEnabled(1);
  602. ui -> textEdit -> setEnabled(1);
  603. ui -> upper -> setEnabled(1);
  604. ui -> downer -> setEnabled(1);
  605. ui -> saver -> setEnabled(1);
  606. ui -> accept -> setEnabled(1);
  607. ui -> comboBox -> setEnabled(1);
  608. }
  609. }
  610.  
  611.  
  612.  
  613.  
  614. //header...............................................
  615.  
  616.  
  617. #ifndef MAINWINDOW_H
  618. #define MAINWINDOW_H
  619.  
  620. #include <QMainWindow>
  621. #include <myclass.h>
  622.  
  623. QT_BEGIN_NAMESPACE
  624. namespace Ui { class MainWindow; }
  625. QT_END_NAMESPACE
  626.  
  627. class MainWindow : public QMainWindow
  628. {
  629. Q_OBJECT
  630.  
  631. public:
  632. MainWindow(QWidget *parent = nullptr);
  633. ~MainWindow();
  634.  
  635. int Row = 0;
  636. int Column = 0;
  637. int mainNumber = 0;
  638. QString name;
  639. int myRow = -1;
  640.  
  641. MyClass* call;
  642.  
  643. private slots:
  644. void on_opener_triggered();
  645.  
  646. void on_addElement_clicked();
  647.  
  648. void on_deleteElement_clicked();
  649.  
  650. void on_tableWidget_cellClicked(int row, int column);
  651.  
  652. void on_textEdit_textChanged();
  653.  
  654. void on_tableWidget_cellEntered(int row, int column);
  655.  
  656. void on_tableWidget_viewportEntered();
  657.  
  658. void record(int row, int column, QString value);
  659.  
  660. void re();
  661.  
  662. void on_tableWidget_cellDoubleClicked(int row, int column);
  663.  
  664. void addElement();
  665.  
  666. void on_saver_triggered();
  667.  
  668. void on_accept_clicked();
  669.  
  670. void on_tableWidget_2_viewportEntered();
  671.  
  672. void on_comboBox_activated(const QString &arg1);
  673.  
  674. void Sorter(QList<QString> a);
  675.  
  676. void swaper(int row1, int row2);
  677.  
  678. void on_upper_clicked();
  679.  
  680. void on_downer_clicked();
  681.  
  682. void changer(QList<QString> a);
  683.  
  684. void on_creater_triggered();
  685.  
  686. private:
  687. Ui::MainWindow *ui;
  688. };
  689. #endif // MAINWINDOW_H
  690.  
  691.  
  692.  
  693.  
  694. //main.cpp.....................................
  695. #include "mainwindow.h"
  696.  
  697. #include <QApplication>
  698.  
  699. int main(int argc, char *argv[])
  700. {
  701. QApplication a(argc, argv);
  702. MainWindow w;
  703. w.show();
  704. return a.exec();
  705. }
  706.  
  707. //class.cpp......................................
  708.  
  709. #include "mainwindow.h"
  710.  
  711. #include <QApplication>
  712.  
  713. int main(int argc, char *argv[])
  714. {
  715. QApplication a(argc, argv);
  716. MainWindow w;
  717. w.show();
  718. return a.exec();
  719. }
  720.  
  721.  
  722.  
  723. //class.h........................................
  724.  
  725. #include "mainwindow.h"
  726. #ifndef MYCLASS_H
  727. #define MYCLASS_H
  728.  
  729. #include <QString>
  730.  
  731. class MyClass
  732. {
  733. QString date;
  734. QString code;
  735. QString name;
  736. QString time;
  737. QString rate;
  738. QString number;
  739. QString numuser;
  740.  
  741. public:
  742. MyClass();
  743.  
  744. QString Getdate();
  745. QString Gettime();
  746. QString Getcode();
  747. QString Getname();
  748. QString Getrate();
  749. QString Getnumber();
  750. QString Getnumuser();
  751.  
  752. void Setdate(QString a);
  753. void Settime(QString a);
  754. void Setcode(QString a);
  755. void Setname(QString a);
  756. void Setrate(QString a);
  757. void Setnumber(QString a);
  758. void Setnumuser(QString a);
  759.  
  760. void set(QString a, QString d, QString e, QString c1, QString f,QString aa, QString bb);
  761. };
  762.  
  763. #endif // MYCLASS_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement