我正在编写一个类似DrawSomething的程序。但我不知道如何转移颜色的拉伸属性。使用C中的套接字进行颜色传输#
我有一个绘制客户端和一个猜测客户端。当绘制客户端改变笔颜色时,如何通知猜测客户端并以新颜色绘制图表。
我想知道客户端或窗体有关如何使用套接字和传输,字符串或RGB中的颜色类型来读取新颜色?
我正在使用此代码。我认为它是字符串,然后我可以使用ptp协议进行传输,并将显示在客户端的另一端(猜测客户端)。
public Color _drawPenColor = Color.Red;
public int _drawPenWidth = 10;
ClientSendPtPPacket("DRAW-" + e.X.ToString() + "-" + e.Y.ToString() + "-"
+ _drawPenWidth.ToString() + "-"
+ _drawPenColor.ToString(),
opponentIP, opponentPort);
我已经得到了包和数据包中的所述一个是 “绘图-150-234(现在的位置)-10(宽度) - 彩色[红色]”。
如果我使用调色板来改变颜色,那将是“Draw-150-234-10-Color [A = 255,R = 45,G = 28,B = 45]”。 IP和端口被忽略。
所以我的问题是如何获得一种新的颜色。
PS:ClientSendPtPPacket类
private void ClientSendPtPPacket(string content, IPAddress toIp, int toPort)
{
try
{
if (_socketClient != null && _socketClient.Connected == true)
{
string sendPacket = _localIP.ToString() + "-" + _localPort.ToString() + "-" +
toIp.ToString() + "-" + toPort.ToString() + "-" + content;
Byte[] bytePacket = System.Text.Encoding.UTF8.GetBytes(sendPacket);
_socketClient.Send(bytePacket);
}
}
catch (Exception excep)
{
}
}
你的问题还不清楚。 “所以我的问题是如何获得新的颜色。” ?事实上,如果您对颜色处理有疑问,为什么要将与网络相关的代码? –
我有一个绘制客户端和一个猜测客户端。当绘制客户端改变笔颜色时,如何通知猜测客户端并以新颜色绘制图表。 – MindHacks
你的意思是与代码相关的网络是无用的。我想是这样。但是,我用它来向您介绍如何传输颜色代码。准确地说,我想知道客户端或者有关如何使用套接字读取新颜色以及传输,字符串或RGB中的颜色类型的表单? – MindHacks