Exemplo n.º 1
0
        private void ReceiveMessages()
        {
            while (Connected)
            {
                // Show the messages in the log TextBox

                Resp = srReceiver.ReadLine();
                if (Resp == null)
                {
                    Connected = false;
                    OnConnectionChange();
                    break;
                }
                if (Resp.StartsWith("PING"))
                {
                    SendToServer("PONG");
                }

                if (Resp.StartsWith("FRIENDS"))
                {
                    Factory.FriendsMan.StartPopulate(Resp.Substring(8));
                }
                if (Resp.StartsWith("CHAT FROM"))
                {
                    String[] split = Resp.Split(' ');
                    Console.WriteLine("Incoming Chat from {0}", split[2]);
                    bool found = false;
                    if (Chats.Count != 0)
                    {
                        foreach (ChatWindow cw in Chats)
                        {
                            if (cw.User == split[2])
                            {
                                found = true;
                                string message = "";
                                for (int i = 3; i < split.Length; i++)
                                {
                                    message = message + split[i] + ' ';
                                }
                                Addline(cw, cw.User, message); // a function that adds a line to the current chat
                            }
                        }
                    }
                    if (!found)
                    {
                        ShowChatWindow(split[2], split[3]);
                    }
                }
            }
        }
Exemplo n.º 2
0
        private string MoneyToString(decimal Amount)
        {
            string Resp, Tien, DOC, Dem, Nhom, Chu, So1, So2, So3, Dich;
            int    S;

            if (Amount == 0)
            {
                Resp = "Không đồng";
            }
            else
            {
                if (Amount > 999999999999)
                {
                    Resp = "Số quá lớn";
                }
                else
                {
                    if (Amount < 0)
                    {
                        Resp = "Trừ";
                    }
                    else
                    {
                        Resp = string.Empty;
                    }
                    Tien = string.Format("{0:###########0.00}", decimal.Parse(Amount.ToString()));
                    Tien = (Tien.PadLeft(15));
                    DOC  = Dem = string.Empty;
                    DOC  = DOC + "trăm  mươi  tỷ    ";
                    DOC  = DOC + "trăm  mươi  triệu ";
                    DOC  = DOC + "trăm  mươi  ngàn  ";
                    DOC  = DOC + "trăm  mươi  đồng  ";
                    DOC  = DOC + "trăm  mươi  xu    ";
                    Dem  = Dem + "một  hai  ba   bốn  năm  ";
                    Dem  = Dem + "sáu  bảy  tám  chín";


                    for (int i = 1; i < 6; i++)
                    {
                        Nhom = Tien.Substring(i * 3 - 3, 3);
                        if (Nhom != "".PadRight(3))
                        {
                            switch (Nhom)
                            {
                            case "000":
                                Chu = (i == 4 ? "đồng " : "");
                                break;

                            case ".00":
                                Chu = "chẵn";
                                break;

                            default:
                                So1 = Nhom.Substring(0, 1);
                                So2 = Nhom.Substring(1, 1);
                                So3 = Nhom.Substring(Nhom.Length > 1 ? Nhom.Length - 1 : 0, 1);
                                Chu = "";
                                for (int j = 1; j < 4; j++)
                                {
                                    Dich = "";
                                    if (int.TryParse(Nhom.Substring(j - 1, 1), out S) == false)
                                    {
                                        S = -1;
                                    }
                                    if (S > 0)
                                    {
                                        Dich  = Dem.Substring(S * 5 - 5, 4).Trim() + " ";
                                        Dich += DOC.Substring((i - 1) * 18 + j * 6 - 5 - 1, 5) + " ";
                                    }
                                    switch (j)
                                    {
                                    case 2:
                                        if (S == 1)
                                        {
                                            Dich = "mười ";
                                        }
                                        else if (S == 0 && So3 != "0")
                                        {
                                            if ((int.Parse(So1) >= 1 && int.Parse(So1) <= 9) ||
                                                (So1 == "0" && i == 4))
                                            {
                                                Dich = "lẻ ";
                                            }
                                        }
                                        break;

                                    case 3:
                                        if (S == 0 && Nhom != "".PadRight(2) + "0")
                                        {
                                            Dich = DOC.Substring((i - 1) * 18 + j * 6 - 5 - 1, 5).Trim() + "".PadRight(1);
                                        }
                                        else if (S == 5 && So2 != "".PadRight(1) && So2 != "0")
                                        {
                                            Dich = "l" + Dich.Substring(1);
                                        }
                                        break;

                                    default:
                                        break;
                                    }
                                    Chu += Dich;
                                }
                                break;
                            }
                            Chu   = Chu.Replace("  ", " ");
                            Resp += Chu.Replace("mươi một", "mươi mốt");
                        }
                    }
                }
            }
            return(Resp.Substring(0, 1).ToUpper() + Resp.Substring(1) + "./.");
        }