Anonymní profil martin – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil martin – Programujte.comAnonymní profil martin – Programujte.com

 

Příspěvky odeslané z IP adresy 78.102.31.–

martin
C / C++ › psat server v qt nebo c++ so…
15. 9. 2012   #163201

 Tady je zdrojovy kod. server.cpp:

#include "server.h"
server::server (QWidget* parent):QWidget (parent)
{
prijem=new QTcpServer (this);
hostAddress=QHostAddress ("192.168.0.103");
prijem->listen (hostAddress,25000);
socket=new QTcpSocket ();
sockety=QMap <QString,QTcpSocket *> ();
connect (prijem,SIGNAL (newConnection ()),this,SLOT (vytvorSlot()));
}
void server::vytvorSlot ()
{
socket=prijem->nextPendingConnection ();
connect (socket,SIGNAL (readyRead()),this,SLOT (startRead()));
socket->write ("LOGIN");
rawdata = socket->readAll();
prezdivka=rawdata;
sockety.insert (prezdivka,socket);
}

void server::startRead ()
{
	QTcpSocket* socket = qobject_cast<QTcpSocket*>(this->sender());
// požadavek
	 rawdata = socket->readAll();
	// argumenty požadavku
	 args = rawdata.split(' ');
	// samotný příkaz
	 command = args.takeFirst();
	qDebug() << rawdata;
	

}

server.h:

#ifndef _SERVER_H
#define _SERVER_H
#include <qtcpserver.h>
#include <qtcpsocket.h>
#include <qabstractsocket.h>
#include <qapplication.h>
#include <qwidget.h>
class server:public QWidget
{
	Q_OBJECT
private:
	QTcpServer * prijem;
	QHostAddress  hostAddress;
	QTcpSocket * socket;
	QStringList tokens;
	QByteArray rawdata;
	QList<QByteArray> args;
	QMap <QString,QTcpSocket *> sockety;
	QString command;
	QString prezdivka;
public:
	server (QWidget* parent=0);
	public slots:
		void vytvorSlot ();
		void startRead ();
};
#endif

je to naslouchani na novou zpravu spravne? Neni to uz vyresene? nejsem si moc jisty.

martin
C / C++ › psat server v qt nebo c++ so…
15. 9. 2012   #163200

Tak uz sem o kousek dal a hned sem narazil na problem. Zatim to mam tak ze pri novem spojeni se vytvori socket,z neho se precte prezdivka a prezdivka jako klic se spolu se socketem jako typem ulozi do mapy. takhle bych nasbiral tech nekolik klientu ale jak od vsech soucasne naslouchat jestli neprisla zprava? 

martin
C / C++ › psat server v qt nebo c++ so…
11. 9. 2012   #163031

Jo to mel byt puvodni zamer,posilat privatni zpravy jenom. Na to bude asi nejlepsi mapa,tak dam se do prace a potom napisu dalsi problemy,jeste jich bude. Dekuju moc,bez tohohle bych na pouziti mapy neprisel a trapil bych se s nejakym polem

martin
C / C++ › qt problem se sloty
15. 8. 2012   #161606

jo aha,uz chapu v cem byla chyba. To sem prehlednul,normalne bych to neudelal ale v rychlosti sem to zkopiroval z hlavickoveho souboru.

martin
C / C++ › qt problem se sloty
15. 8. 2012   #161605

aha,dekuju. Zdalo se mi ze to mam dobre,pri spusteni vsechno funguje jen pri vyvolani slotu to spadne. 

martin
C / C++ › qt problem se sloty
14. 8. 2012   #161588

zdravim,jsem zacatecnik v qt a potreboval bych pomoct se sloty. Mam primitivni program s qlineedit do ktereho napisu text,pole qlabel do ktereho se text vypise a tlacitko qpushbutton po jehoz zmacknuti se text vypise do qlabel. vytvoril jsem si na to vlastni slot ktery ten text zkopiruje ale pri zavolani toho slotu se jakoby zrusi ty objekty,nemuze k nim pristoupit a zmenit ten text a skonci to access voilation. prikladam zdrojovy kod,potreboval bych pomoc s tim jak spravne rozdelit soubory,co kam dat ,kam pridat ten slot atd.Dekuju za odpovedi.

program.h:

#ifndef _PROGRAM_H
#define _PROGRAM_H
#include <qapplication.h>
#include <qlabel.h>
#include <qlineedit.h>
#include <qpushbutton.h>
#include <qlayout.h>
class okno:public QWidget
{
Q_OBJECT
public:
okno (QWidget* parent = 0);
private:
QLabel * textik;
QPushButton * tlacitko;
QLineEdit *editbox;
QHBoxLayout * layout;
private slots:
void zmentext ();
};
#endif

program.cpp:

#include "program.h"
okno::okno (QWidget* parent):QWidget (parent)
{
QLabel *textik=new QLabel ("textik co se zmeni");
QPushButton *tlacitko=new QPushButton ("zmen text");
QLineEdit * editbox=new QLineEdit ();
QHBoxLayout * layout=new QHBoxLayout ();
connect (tlacitko,SIGNAL (clicked()),this,SLOT (zmentext()));
layout->addWidget (textik);
layout->addWidget (editbox);
layout->addWidget (tlacitko);
setLayout (layout);
}
void okno::zmentext ()
{
textik->clear(); // zde je problem. pristup tam kam nema.
textik->setText (editbox->text ());
}

main.cpp:


#include "program.h"

int main(int argc, char** argv)
{
QApplication app(argc, argv);
okno okynko;
okynko.show ();
return app.exec();
}

martin
C / C++ › zacatky s qt
12. 8. 2012   #161480

dekuju moc,proctu a uvidim :) 

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161408

dneska nejak divna nalada :D pardon takovy fakt nebyvam

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161406

kurva to nebylo ono? :D

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161405

gratuluju crazy :)

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161403

 uz sem to tu dal jen tak ze zoufalstvi s tim ze to aspon zkusim,posledni vec ktera se mi na tom zdala divna.

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161400

if(cislo == 0 || cislo1 == 0 || cislo2 == 0) v tomhle je problem?vzdavam se ,sem moc blbej. uz sem jen tak zkusil.

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161396

nazev romenastrany je spravne?

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161394

to bude nejaka blbost.. urcite to bude nejaka blbost kterou prehlidnu i kdyz bych ji normalne neprehlidl tak zrovna ted ji prehlidnu je mi to vic nez jasne

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161389

takze pocty sou spravne? jo to je fajn to mam sanci najit potom :D

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161385

nepis to ja to najdu nejak :D

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161384

neni tam chytak v tom ze spatne pocita uhly? ja sem ted vychodil zakladku tak na me bud hodnej a nedrt me geometrii

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161381

jaaj,dik za zabavu :D to bude asi na dlouho

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161379

takze #define _USE_MATH_DEFINES bez ktereho preklad nejde chybu neresi a chce to projet celej kod?

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161377

nebo je chyba jinde ?

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161376

no stacilo pridat #define _USE_MATH_DEFINES na zacatek. zacetl sem se do hlavickoveho kodu math.h a bylo to tam :D

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161374

hledam hledam neni cas,delam na hre a ucim se qt :D tak pockaj ja uz to najdu

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161372

jo sry :D dobrej napad celkem :D

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161370

ajo.. :D pozde sem si precetl co si napsal uz :D fajn zkusim to najit

martin
C / C++ › Obrovitý problém!
11. 8. 2012   #161369

nejak drzej ne? tohle neni placena podpora lidi tu pomahaji dobrovolne

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032020 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý