kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: QListWidget items von einem zum anderen übertragen

    geschrieben von everydaynormalguy

    Hi, würd ich so machen:

    void MainWindow::on_pushButton_clicked()
    {
        for(int i = 0; i<ui->tab2_list_spectra->model()->rowCount(); i++)
        {
            if(ui->tab2_list_spectra->item(i)->isSelected())
            {
                ui->tab2_light_list->addItem(ui->tab2_list_spectra->item(i)->text());
                ui->tab2_list_spectra->model()->removeRow(i);
                i--;
            }
        }
    }

    mfg
  • in: mit c++ mysql abfragen

    geschrieben von everydaynormalguy

    Hi, Du kannst Dir mal Qt anschauen, da gibts ne Klasse "QSqlQuery", ist recht einfach zu bedienen.
    Hatte allerdings einige Probleme unter Windows, somit kann ich Dir empfehlen unter Linux zu arbeiten.
    Musst Dir noch die ensprechenden Treiber runterladen (ma "sql client c++ qt" googeln).
    Zwecks Qt lad Dir das SDK runter: http://qt.nokia.com/downloads => LPGL => SDK.
    Viel Spaß!
  • in: 2D-Programmierung mit C++

    geschrieben von everydaynormalguy

    Würde Dir das Qt-SDK empfehlen (http://qt.nokia.com/downloads/ ->tab "LPGL", da das SDK)
    Wirkt am Anfang etwas umständlich überall ein Q davorzuschreiben, is aber supermächtig.
    Sind auch ne Menge Beispiele für 2D-Grafik vorhanden.
    Viel Spaß!
  • in: FTP Server selbst programmieren

    geschrieben von everydaynormalguy

    Hi,
    ich hab ma ne P2P Architektur zur Vernetzung mechatronischer Systeme entwickelt (war so ne art SOA 2.0). Die Systeme mussten ihre Interaktion dezentral und im direkten Kontakt miteinander organisieren (um die Latenz zu reduzieren, war ne zeitkritische Angelegenheit, weil Roboter und Menschen nen gemeinsamen Arbeitsraum teilten, son Sicherheitsding, wie auch immer).
    Was für dich interessant sein könnte is die Klasse "CommunicationManager" (CM). Die hatte so in etwa, was Du brauchst (ein Server, der beliebig Clients verwalten kann)

    .h
    #ifndef COMMUNICATIONMANAGER_H
    #define COMMUNICATIONMANAGER_H
    
    #include <QObject>
    #include <QTcpServer>
    #include <QTcpSocket>
    #include <QStringList>
    
    class CommunicationManager : public QObject
    {
        Q_OBJECT
    
    public:
        CommunicationManager(QObject *parent = 0);
    
    public slots:
        void Top2this(const QString &, const QString &);
    
    private slots:
        void newConnection();
        void readSocket();
        void connectionClosed();
    
    signals:
        void this2Top(const QString &,const QString &);
    
    private:
        QTcpServer *Server;
        QList<QTcpSocket*> *SocketList;
        QStringList *IDList;
    };
    
    #endif // COMMUNICATIONMANAGER_H


    .cpp
    #include "communicationmanager.h"
    
    CommunicationManager::CommunicationManager(QObject *parent)
    {
        SocketList = new QList<QTcpSocket*>;
        IDList = new QStringList;
        Server = new QTcpServer;
        connect(Server,SIGNAL(newConnection()),this,SLOT(newConnection()));
    }
    
    void CommunicationManager::Top2this(const QString &ID, const QString &Message)
    {
        QString qs = Message;
        qs.remove(0,6);
        if(qs.startsWith("Send"))
        {
            qs.remove(0,6);
            qs += "\n";
            int index = IDList->indexOf(ID);
            if(index == -1)
            {
                emit this2Top(ID,"GUI::Error: Trying to write to an unconnected Device");
            }
            else
            {
                SocketList->at(index)->write(qs.toLocal8Bit());
            }
        }
    
        else if(qs.startsWith("Initialize"))
        {
            QStringList tokens = ID.split(QRegExp(":"),QString::SkipEmptyParts);
            Server->listen(QHostAddress::Any,tokens[1].toInt());
        }
    
        else if(qs.startsWith("Connect"))
        {
            if(!IDList->contains(ID))
            {
                QTcpSocket *Socket = new QTcpSocket;
                connect(Socket,SIGNAL(readyRead()),this,SLOT(readSocket()));
                connect(Socket,SIGNAL(disconnected()),this,SLOT(connectionClosed()));
                QStringList tokens = ID.split(QRegExp(":"),QString::SkipEmptyParts);
                Socket->connectToHost(QHostAddress(tokens[0]),tokens[1].toInt());
                SocketList->append(Socket);
                IDList->append(ID);
            }
        }
    
        else
        {
            emit this2Top(ID,"GUI::Error: Unknown message: "+Message);
        }
    }
    
    void CommunicationManager::newConnection()
    {
        QTcpSocket *Socket = Server->nextPendingConnection();
        connect(Socket,SIGNAL(disconnected()),this,SLOT(connectionClosed()));
        IDList->append(Socket->peerAddress().toString()+QString(":%1").arg(Socket->peerPort()));
        SocketList->append(Socket);
        emit this2Top(IDList->last(),"GUI::NewDeviceAvailable");
        connect(Socket,SIGNAL(readyRead()),this,SLOT(readSocket()));
    }
    
    void CommunicationManager::readSocket()
    {
        QTcpSocket *Socket = (QTcpSocket*)sender();
        QString qs;
        while (Socket->bytesAvailable())
        {
            qs = Socket->readLine();
            if(qs!="")
            {
                int index = SocketList->indexOf(Socket);
                if(index == -1)
                {
                    emit this2Top("Default","GUI::Error: Unexpected message by unregistered device:"+qs);
                }
                else
                {
                    qs.remove("\r");
                    qs.remove("\n");
                    emit this2Top(IDList->at(index),qs);
                }
            }
        }
    }
    
    void CommunicationManager::connectionClosed()
    {
        QTcpSocket *Socket = (QTcpSocket*)sender();
        int index = SocketList->indexOf(Socket);
        if(index != -1)
        {
            QString qs = IDList->at(index);
            IDList->removeAt(index);
            SocketList->removeAt(index);
            emit this2Top(qs,"GUI::ConnectionClosed");
            emit this2Top(qs,"Sub::ConnectionClosed");
        }
    }


    Musste Dir wahrsch noch ein bisschen anpassen. Würde dann noch nen FileManager schreiben, der liest und schreibt, was über den CM so reinkommt. Hoffe des hilft Dir!
    MfG, edng


  • in: Groupware Projekt

    geschrieben von everydaynormalguy

    Hi,
    im QtSDK is doch schon ein Beispiel drin (examples->network->networkchat).
    Musste evtl noch was anpassen, aber ansonsten passt des schon.
    Darf man fragen was Du vor hast?? (Aus reiner Neugierde und auch als Motivaltion für mögliche Projektpartner)

    mfg, edng

  • in: FTP Server selbst programmieren

    geschrieben von everydaynormalguy

    Hi,

    Ich würde das so machen:
    QTcpServer, für jede eingehende Verbindung ein QTcpSocket (ne QList<QTcpSocket*> anlegen). Sobald sich ein Client meldet, Passwort und User abfragen (diese in files lokal speichern, beim Programmstart auch in list packen). Gelingt die Authentifizierung kommt wahrsch. ein request mit Pfad und File. Mit QFile->readAll() file einlesen und auf Socket schreiben. Fertig :-)

    Weis leider net wie das FT-Protokol ganau aussieht, aber lässt sich bestimmt rausfinden. Die TCPSockets haben manchma Probs mit der Firewall, evtl ports Freigeben. Und überhaupt: FTP-Server nicht selber machen ;-)

    CesarFTP kann ich Dir für Testzwecke und zur Inspiration zwecks zu implementierender Features empfehlen. Würde Dir aber echt empfehlen,Dich auf Deinen eigentlichen Plan zu konzentrieren und Dich nicht mit der Programmierung eines FTP Servers aufzuhalten.

    MfG, edng
  • in: .txt dokument lesen/schreiben

    geschrieben von everydaynormalguy

    Hehe, stimmt fin is joa da (verzockt)

    probierma folgendes:

    // writing on a text file
    #include <iostream>
    #include <fstream>
    using namespace std;
    
    int main () {
      ofstream myfile ("example.txt");
      if (myfile.is_open())
      {
        myfile << "This is a line.\n";
        myfile << "This is another line.\n";
        myfile.close();
      }
      else cout << "Unable to open file";
      return 0;
    }
    
    
    // reading a text file
    #include <iostream>
    #include <fstream>
    #include <string>
    using namespace std;
    
    int main () {
      string line;
      ifstream myfile ("example.txt");
      if (myfile.is_open())
      {
        while (! myfile.eof() )
        {
          getline (myfile,line);
          cout << line << endl;
        }
        myfile.close();
      }
    
      else cout << "Unable to open file"; 
    
      return 0;
    }


    mfg
  • in: .txt dokument lesen/schreiben

    geschrieben von everydaynormalguy

    Hi, solltest evtl auch was reinschreiben in deinen string:

    char string[100]; //erzeugt einen lehren string

    // in den niemals was geschrieben wird (zumindest in deinem Programm)

    :wink:


  • in: Verschlüsselung von Patitionen und Festplatten

    geschrieben von everydaynormalguy

    Hi, würde Dir TrueCrypt empfehlen:

    kostet nix und ist leicht zu bedienen

    http://www.truecrypt.org/downloads

    mfg, everydaynormalguy
  • in: GPS Daten via Serielle Verbindung auf Windows CE

    geschrieben von everydaynormalguy

    Hi, is schon was her, hab nochma ein Beispiel ausgegraben (QtCreator):

    Das Programm erlaubt die Steuerung eines Greifers (über virtuellen serial port angesprochen)
    über Ethernet. Hier ein paar Auszüge aus dem Quellcode:

    in pro datei:
    ...
    INCLUDEPATH += C:\Qt\qextserialport-1.2win-alpha-patched
    LIBS += -LC:\Qt\qextserialport-1.2win-alpha-patched\build
    CONFIG(debug, debug|release):LIBS += -lqextserialportd
    else:LIBS += -lqextserialport
    ...

    Dann einfach sowas wie:
    (header)
    ...
    #include "qextserialport.h"

    ...
    private:
    QextSerialPort * sport;

    (cpp)
    sport = new QextSerialPort("COM3", QextSerialPort::EventDriven);
    sport->setBaudRate(BAUD9600);
    ...
    sport->setStopBits(STOP_1);

    sport->open(QIODevice::ReadWrite);

    connect(sport, SIGNAL(readyRead()), this, SLOT(serialReadyRead()));
    ...

    War glaubich keine "out-of-the-box" Lösung, musste nochma googeln, evtl nochma neu kompilieren.

    Viel Erfolg



  • in: GPS Daten via Serielle Verbindung auf Windows CE

    geschrieben von everydaynormalguy

    Hi, ist dir qextserialport ein Begriff?

    Is ne qt-klasse für Kommunikation mit Serieller Schnittstelle:
    http://qextserialport.sourceforge.net/

    mfg
  • in: Wiki Bots

    geschrieben von everydaynormalguy

    Hi, suchst du

    http://pywikipediabot.sourceforge.net/ ??

    is in Python geschrieben...

    mfg
  • in: Bildschirm im Netzwerk

    geschrieben von everydaynormalguy

    Hi, für sowas nehm ich TeamViewer.
    Das gute dabei: kommt durch praktisch jede firewall, da sich beide rechner auf nem externen server anmelden.
    Die Verzögerung is vertretbar (bislang hab ich es nur innerhalb D verwendet).
    einfach mal anschauen. Viel Spaß!
  • in: Programmabläufe Automatisieren

    geschrieben von everydaynormalguy

    Hi,
    Wenn Du unter windows mit cpp programmierst,
    probiers mal mit "windows.h"

    #include <windows.h>
    ...

    // cusor position setzen (x und y beziehen sich auf obere linke ecke)
    SetCursorPos(100,100);

    // click links
    mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
    mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);

    viel spaß


  • in: Qt mit foreach + Parsing von Strings

    geschrieben von everydaynormalguy

    Hi, kannst auch mal nen QTimer versuchen, der alle paar millisekunden updatet.
  • in: C++ Forms Anwendung

    geschrieben von everydaynormalguy

    Kann bladehunter nur zustimmen Qt rules!

    Es gibt ein kostenloses SDK, alles drum und dran (http://qt.nokia.com/downloads).
    gehe auf den Tab LPGL und nimm das SDK(!!!) für die gew. Umgebung.

    Fenster kannst Du Dir im Designer einfach zusammenklicken. Der Sourcecode wird automatisch erstellt.
    Wenn Du bspw. nen button einfügst, landest Du mit rechtsclick->Slot Anzeigen-> clicked() direkt im sourcecode und kannst dann was auch immer...

    Sind zudem superviele andere sachen mit drin, sei es für web programmierung, grafik, etc...
  • in: Wie lerne ich C+ oder C++?

    geschrieben von everydaynormalguy

    Hi, ich würde Dir QtCreator empfehlen.

    Damit kannst Du sowohl auf linux, als auch windows als auch mac programmieren.
    Außerdem gibts ne menge beispiele und tutorials. Ich verwende die umgebung auch, um Anfängern C++ beizubringen.

    Lad dir am besten das SDK herunter (Mac): http://qt.nokia.com/downloads/sdk-mac-os-cpp

    Viel Spaß!
  • in: SendKeys mit windows

    geschrieben von everydaynormalguy

    Hi,

    hier ein kleines Beispiel (A-Keystroke)

    keybd_event(0x41, 0, 0L, 0L); // Keydown
    keybd_event(0x41, 0, KEYEVENTF_KEYUP, 0L); // Keyup

    Grüße... Everydaynormalguy

Login zum Webhosting ohne Werbung!