Russian Qt Forum

Qt => Вопросы новичков => Тема начата: thechicho от Октябрь 24, 2011, 10:54



Название: Моя первая прога на Qt
Отправлено: thechicho от Октябрь 24, 2011, 10:54
попинайте, плиз.
какие недочеты я допустил? как их исправить? (что посоветуете почитать, чтобы исправить).
и объясните, плиз, в чем разница:
http://doc.qt.nokia.com/stable/configure-options.html
-openssl (Compile in run-time OpenSSL support | This option denotes a default value and needs to be evaluated. If the evaluation succeeds, the feature is included)
-openssl-linked (Compile in linked OpenSSL support)
я собирал с -openssl. что "лучше" на ваш взгляд и почему.

main.cpp
Код
C++ (Qt)
#include <QtGui/QApplication>
#include "beeliner.h"
 
int main(int argc, char *argv[])
{
   QApplication a(argc, argv);
   Beeliner w;
   w.show();
 
   return a.exec();
}

.h
Код
C++ (Qt)
#ifndef BEELINER_H
#define BEELINER_H
 
#include "ui_phones.h"
 
#include <QWidget>
#include <QStandardItemModel>
#include <QThread>
#include <QMutex>
#include <QNetworkCookieJar>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QElapsedTimer>
#include <QDebug>
#include <QDir>
#include <QTextCodec>
#include <QDateTime>
 
class BeelinerThread : public QThread
{
   Q_OBJECT
 
public:
   BeelinerThread(QObject *parent = 0);
   ~BeelinerThread();
 
    void run();
    int iter;
    int failCount;
    QStringList phonesForParsing;
    QStandardItemModel *model;
 
    void writeError(QString fileName, QString data);
};
 
namespace Ui {
   class Beeliner;
}
 
class Beeliner : public QWidget
{
   Q_OBJECT
 
public:
   explicit Beeliner(QWidget *parent = 0);
   ~Beeliner();
 
   void writePhones(QString fileName, QStringList list);
 
private:
   Ui::Beeliner *ui;
   Ui::Dialog uiPhones;
 
   QStringList phones;
   QStringList phonesForParsing;
   QStandardItemModel *model;
   QString filePhones;
   QString fileErrors;    
 
   QStandardItemModel *modelPhones;
   QDialog *phonesDialog;
   int result;
 
private slots:
   void on_pushButton_clicked();
   void on_pushButtonPhones_clicked();
 
   void ckeckAll(int);
 
   void addPhoneForParsing(QStandardItem*);
   void addPhone();
   void deletePhone();
   void changePhone();
 
   void resultCount();
 
 
};
 
#endif // BEELINER_H
 

.cpp
http://pastebin.com/xFi0RFk0 (http://pastebin.com/xFi0RFk0)

beeliner.zip - исходники (qmake -beeliner.pro \ mingw32-make)
Click here to start download from sendspace
http://www.sendspace.com/file/bzf2g9 (http://www.sendspace.com/file/bzf2g9) - SSL (в папку с прогой)
http://www.sendspace.com/file/ycfl2x (http://www.sendspace.com/file/ycfl2x) - Qt libs (в папку с прогой)


Название: Re: Моя первая прога на Qt
Отправлено: thechicho от Октябрь 24, 2011, 11:02
а, да. если захотите через эту прогу проверить баланс (билайн) (многопоточная проверка)
https://uslugi.beeline.ru/
регаемся.
в проге добавляем телефон:пароль:
двоеточие обязательно, город нет


Название: Re: Моя первая прога на Qt
Отправлено: Авварон от Октябрь 24, 2011, 11:48
Мьютекс на стеке - это круто.


Название: Re: Моя первая прога на Qt
Отправлено: kambala от Октябрь 24, 2011, 11:57
void ckeckAll(int state);


Название: Re: Моя первая прога на Qt
Отправлено: thechicho от Октябрь 24, 2011, 12:14
void ckeckAll(int state);

надо просто void ckeckAll(int); ?


Название: Re: Моя первая прога на Qt
Отправлено: thechicho от Октябрь 24, 2011, 12:15
Мьютекс на стеке - это круто.

а как правильно сделать?


Название: Re: Моя первая прога на Qt
Отправлено: kambala от Октябрь 24, 2011, 14:50
надо слова правильно писать. check