活着

客户端收到的:

与龙二没日没夜的赌钱,半夜太太家珍来寻,跪着求她回家,他却认为晦气,狠狠的扇他多少个嘴巴子甚至花钱雇人将她扔了出来,家珍独自一人在黑黢黢的夜间踏着泥泞的便道走回家,黑暗、恐惧并未给她带来一丝怨气。

起名 1

富贵很浑,骑着妓女故意走到大叔米行大声的给四伯请安,他这是要当这所有人的面打老丈人的脸,他这是要让大伯以及围观的人都领会固然自己浑我拈花惹草,可自己有钱仍然娶你引以为傲的丫头。

先搞服务端吧,写一个子类,继承QDialog类,起名为UdpServer类。头文件要引用大家上面说的QUdpSocket那多少个类,还有大家想要的布局的类。

活着在富贵纸醉金迷心潮澎湃的时候,借着龙二的手给了他一个脆响的耳光,直打的她眼冒金星胃抽冷气久久回然则神,他一夜之间输光了祖先留下的富有血汗,房屋、田产,从一位颐指气使的富商少爷沦为粗衣淡饭的贫下中农,甚至不如贫下中农,至少中农皮糙肉厚会种地有力气,而财大气粗走几步都会气喘吁吁,是早就被妓女掏空了的人体。

爹爹死了,摔倒在这口不离不弃,每日她如报晓的公鸡一样蹲在上边拉大便的缸旁边,家珍也被老丈人给带走了,老丈人终于得以骄傲的喊她“畜牲”,不直呼其名,而岳母临近垂暮之年却要低三下四的去乞求亲家。

起名,人唯有撂倒的时候才知道何人是真心待自己的,可惜迟了,望着满头花白银丝本该颐养天年的慈母以及懵懂无知的姑娘凤霞,富贵仿佛一下子从虚妄的睡梦中跌回了切实可行。

人如果活的愉悦,穷也就是。

龙二成了地主,富贵向龙二求租了五亩田地,他根本告别了阔少爷的地位成了一位地地道道的农夫,家珍抱着半岁的幼子有庆回来了,一家人毕竟团聚了,富贵真真切切的感想到了幸福,即使累也甘之如饴,以往浪费只可是是借赌博来打发空寂无聊的时刻,目前生活给她拷上了惨痛繁重的桎梏,他却学会了苦中作乐。

生存最大的美满便是有心上人陪伴苦乐共享。

屋漏偏逢连夜雨,二姨病了,万般无奈富贵怀揣着两块银元去城里求医,生活就是这么,不是您改邪归正了它就会善待你。他被国民党抓去当了壮丁,一去就是两年,饥寒交迫数次与死神擦肩而过,无论咋样绝望他都不曾屏弃丝毫活着的指望,因为姑姑、家珍、凤霞还有有庆都在等着团结,与死神共枕而眠的生活里他认得了春生、栓子,困顿的生存痛苦不是源于肢体而是精神上难以为继的愿意,栓子死了,在一个找不过来路寻不到归途的夏季清早,被炮弹炸死了,春生外出找食物也下落不明了,而这时候生活却向他投来了畅快的拥抱,被中共解放了,他迅速的踏上了回家的征程。

山仍旧原先的山,路依旧原先的路,村庄如故本来的村落,一切看似都尚未变,却也变得面目全非,大姑死了,在她离家后的多个月就死了,至死都不理解心头牵记的幼子身在哪儿,就像她的叔伯没有死在祖屋一样,凤霞一场大病过后成了聋哑人,有庆也会跑了,天知道柔弱的传家宝这两年是何等含辛茹苦的将多少个男女养大,不过现在好了,富贵回来了,一切都会变好的。

生活朝着富贵心中所想的方向走去,即使过的紧缺可至少一家人幸福愉悦的在共同。轰轰烈烈的人民公社化运动、大炼钢铁紧接着三年自然灾害,无论咋样劳顿他都挺过来了,有家珍、凤霞、有庆的伴随他觉得有钱,也许是“生活”觉得她过的太自在太得意洋洋了
,竟借着院长夫人这一身份夺去他有庆年轻的人命,有庆怀揣着光荣的重任去献血却没悟出献出了性命,生命在被贴上社会地位的竹签时,也就分为了三六九等,司长夫人的生命分明要极其尊贵的多。

富国愤怒的想要杀人想要泄愤,他尖锐的通往省长的肚子上踢了一脚,可当看清委员长的模样时,他却不顾也没悟出,司长竟是那些无比依恋自己,在同世界第一次大战壕里吃睡两年的春生,他听到“生活”发出了调侃的嘲弄声,他似乎泄气的气球想恨却怎么也恨不起来,强忍着内心的惨痛与春生领悟当下的情形,仅仅留下一句“你欠我孙子一条命”
,背着有庆冰凉的尸体步履蹒跚的回来村庄,眼泪混着泥土送走了有庆,却没敢告诉妻子家珍,因为家珍已经久病卧床生死旦夕再也接受不任何的打击了。

家珍依然猜到了,思量外孙子的心是敏感的,仅凭着富裕中午回到脚步声的方面她便明白,因为那是通向埋葬富贵亲人的道路。春生送来了两百块大洋,家珍如何都不可能宽容她,甚至不愿见她,有庆难道就值二百块大洋?两百块你就想买个安心?你美梦,春生满怀愧疚的偏离,自此没有再出新。

也许是“生活”觉得温馨入手太重,假设此时再夺去家珍的生命这不啻对松动太残酷,终于重新向他敞开了胸怀,家珍的病情竟奇迹般的有些改进能从床上爬起来了,而且外孙女凤霞也风风光光的嫁给了城市居民二喜,固然是个偏头可是对凤霞好,对自己亲人好,凤霞怀孕了,促地反弹的幸福生活似乎来的顺理成章。

凤霞被推进了病房,在漫长焦急的等候中得来了却是“保大保小”的噩耗,就在二喜、富贵说保大的时候,生活再一次咧开嘴笑了,他就是要作弄这对逆来顺受不知反抗的阿斗,一个白白胖胖的在下被抱了出去,医务卫生人员告诉大小平安,富贵、二喜心旷神怡的简直要疯掉了,恨不得掏出心来指着给大伙看看,你们看我是有多欢乐多兴奋,可惜笑容还没散去却已经僵住了,凤霞产后出血不治身亡。

二喜背着凤霞就像当年富贵背着有庆,顶着同一片黑暗的天幕,踏着雷同条羊肠小道走回家,这一次富贵没有暗地里的将凤霞掩埋了,家珍没能见有庆最后一面至少应当让他见凤霞一面,白发人送黑发人,家珍的病更重了一度去日无多。

春生又来了,在此以前是当做省长近日是走资派的犯人,他是逃出来的,为了跟富贵做临终前的告别以及最终求得家珍原谅,家珍终于原谅的春生并且与富有极力劝说他活下来,为他们,也为了死亡的有庆,春生走了,可几月后却传来了她自杀的死信,是何许让她走的如此决绝,孤立无援?生无可恋?也许正如富贵所说,有庆的死其实与春生没有涉及,是一时,是活着的考验。

家珍在凤霞死后赶紧也离开了,富贵只剩余二喜还有外孙苦根相依为命了,二喜当初为了让凤霞风光过门不惜举借外债,以至于之后几年为了债务缠身,这诚然令人费解,难道脸面就着实那么重大吗?生活到底是为着什么?

生活再度显现了他摧枯拉朽的魅力,二喜死了,在工地上被水泥板夹死了,留下幼小的苦根孤零零的守着大龄的富裕,快要入土为安的富裕不得不努力下地耕田来养活祖孙二人,即便如此“生活”如故没打算放过他,他们太穷,苦根生病了,本想做顿好吃的豆类给他解馋,却没想到会被豆子噎死,就这么留下了富贵孤零零一个人。

富有牵着这头与她一样年事已高的失信走在田岗上,生活给了他身残志坚的生机以及充分的寿命来体会漫长岁月的苦头,是参加者也是观望者。

活着,什么都不为。

客户端很简单,怎么落实布局,我就不多说了,首虽然dataReceive函数。

宽裕给老黄牛起名也叫富贵这是否暗喻着自己与这头老黄牛一样默默忍受着生活所赋予的全方位,喜乐悲伤皆混进脚下的这片泥土,直至生命的底限连同自己也会化为一抔黄土。

在.cpp文件里,我们先是把界面呈现出来,然后用udp的writedategram把想要传的写进去。

人是为着活着自我而活着的,而不是为了活着之外的任何事物所活着。

 1 #ifndef UDPCLIENT_H
 2 #define UDPCLIENT_H
 3 #include <QDialog>
 4 #include <QVBoxLayout>
 5 #include <QTextEdit>
 6 #include <QPushButton>
 7 #include <QtNetwork/QUdpSocket>
 8  class UdpClient : public QDialog
 9 {
10     Q_OBJECT
11  public:
12     UdpClient(QWidget *parent = 0);
13     ~UdpClient();
14  private:
15     QTextEdit* ReceiceTextEdit;
16     QPushButton* CloseBtn;
17     QVBoxLayout* mainLayout;
18  public slots:
19     void CloseBtnClicked();
20     void dataReceived();
21  private:
22     int port;
23     QUdpSocket* udpSocket;
24 };
25 #endif // UDPCLIENT_H

本身这里用qDebug把要传的事物打印出来,举行测试,看看是不是传过去了。

客户端:

末段突显一下界面,服务端发送hello。

QT有包装好的UDP协议的类,QUdpSocket,里面有我们想要的函数接口。感兴趣的话,可以看看。

不停的在打印hello。直到点击关闭,或者服务端为止。

 1 #include "udpserver.h"
 2 
 3 
 4 UdpServer::UdpServer(QWidget *parent,Qt::WindowFlags f)
 5     : QDialog(parent,f)
 6 {
 7    setWindowTitle(tr("UDP SERVER"));
 8    TimerLabel = new QLabel(tr("show time:"),this);
 9    TextLineEdit = new QLineEdit(this);
10    StartBtn = new QPushButton(tr("start"),this);
11 
12    mainLayout = new QVBoxLayout(this);
13    mainLayout-> addWidget(TimerLabel);
14    mainLayout-> addWidget(TextLineEdit);
15    mainLayout-> addWidget(StartBtn);
16 
17    connect(StartBtn,SIGNAL(clicked()),this,SLOT(StartBtnClicked()));
18    port = 5555;
19    isStarted = false;
20    udpSocket = new QUdpSocket(this);
21    timer = new QTimer(this);
22    connect(timer,SIGNAL(timeout()),this,SLOT(timeout()));
23 
24 }
25 
26 UdpServer::~UdpServer()
27 {
28 
29 }
30 void UdpServer::StartBtnClicked()
31 {
32    if(!isStarted)
33    {
34       StartBtn->setText(tr("STOP"));
35       timer->start(1000);
36       isStarted = true;
37    }
38     else
39    {
40        StartBtn->setText(tr("BEGIN"));
41        isStarted = false;
42        timer->stop();
43    }
44 }
45 void UdpServer::timeout()
46 {
47     QString msg = TextLineEdit->text();
48     int length=0;
49     if(msg=="")
50     {
51        return;
52     }
53 
54     if((length=udpSocket->writeDatagram(msg.toLatin1(),msg.length(),QHostAddress::Broadcast,port))!=msg.length())
55     {
56         qDebug() << msg.toLatin1();
57         return;
58     }
59 }
 1 #ifndef UDPSERVER_H
 2 #define UDPSERVER_H
 3 
 4 #include <QDialog>
 5 #include <QLabel>
 6 #include <QLineEdit>
 7 #include <QPushButton>
 8 #include <QVBoxLayout>
 9 #include <QtNetwork/QUdpSocket>
10 #include <QtNetwork/QHostAddress>
11 #include <QTimer>
12 class UdpServer : public QDialog
13 {
14     Q_OBJECT
15 public:
16     UdpServer(QWidget *parent = 0,Qt::WindowFlags f= 0);
17     ~UdpServer();
18 private:
19     QLabel * TimerLabel;
20     QLineEdit * TextLineEdit;
21     QPushButton* StartBtn;
22     QVBoxLayout * mainLayout;
23  public slots:
24     void StartBtnClicked();
25     void timeout();
26  private:
27     int port;
28     bool isStarted;
29     QUdpSocket * udpSocket;
30     QTimer *timer;
31 };
32 #endif // UDPSERVER_H

起名 2

 1 #include "udpclient.h"
 2 #include <QMessageBox>
 3 #include <QHostAddress>
 4 
 5 
 6 UdpClient::UdpClient(QWidget *parent)
 7     :QDialog(parent)
 8 {
 9   setWindowTitle("UDP CLIENT");
10 
11   ReceiceTextEdit = new QTextEdit(this);
12   CloseBtn = new QPushButton(tr("Close"),this);
13 
14   mainLayout  = new QVBoxLayout(this);
15   mainLayout->addWidget(ReceiceTextEdit);
16   mainLayout->addWidget(CloseBtn);
17 
18   connect(CloseBtn,SIGNAL(clicked()),this,SLOT(CloseBtnClicked()));
19 
20   port =5555;
21 
22   udpSocket = new QUdpSocket(this);
23 
24   bool result = udpSocket->bind(port);
25 
26   if(!result)
27   {
28      QMessageBox::information(this,tr("ERROR"),tr("connect error"));
29      return;
30   }
31   connect(udpSocket,SIGNAL(readyRead()),this,SLOT(dataReceived()));
32 
33 }
34  UdpClient:: ~UdpClient()
35 {
36 
37 
38 }
39 void UdpClient::CloseBtnClicked()
40 {
41    close();
42 }
43 void UdpClient::dataReceived()
44 {
45     while(udpSocket->hasPendingDatagrams())
46     {
47 
48         QByteArray datagram;
49         datagram.resize(udpSocket->pendingDatagramSize());
50         udpSocket->readDatagram(datagram.data(),datagram.size());
51         QString msg=datagram.data();
52         ReceiceTextEdit->insertPlainText(msg);
53 
54     }
55 }

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图