Esempio n. 1
0
        public static void ShowComment(question_data data)
        {
            frmComment comment = new frmComment(data);

            comment.Owner = _this;
            comment.ShowDialog();
        }
Esempio n. 2
0
        private void submit()
        {
            int index = uc_question_bottom.CurrentIndex;
            var b     = uc_question.JudgeAnswer();

            if (b != null)
            {
                var           arr = uc_question.Answer;
                string        str = string.Join(",", arr);
                question_data qd  = _questions[index];
                Answer_Data   ad  = new Answer_Data
                {
                    qid    = qd.qid,
                    select = str,
                    type   = qd.type,
                };
                if (!_answer_List.ContainsKey(index))
                {
                    _answer_List.Add(index, ad);
                }
                else
                {
                    _answer_List[index] = ad;
                }
                uc_question_bottom.SetColor(index, (bool)b);
                if (index > _max_index)
                {
                    _max_index = index;
                }
            }
            List <Answer_Data> adlist = new List <Answer_Data>();

            foreach (var kv in _answer_List)
            {
                adlist.Add(kv.Value);
            }
            var json  = JsonConvert.SerializeObject(adlist);
            var param = new
            {
                token  = Config.Token,
                phone  = Config.Phone,
                cid    = _gid,//_cate_id,
                answer = json,
                sign   = _max_index,
            };
            var re = HttpHelper.Post(Config.Server + "/record/mark", param);

            b = HttpHelper.IsOk(re);
            if (b == true)
            {
                var data = re["data"];
                //string msg = string.Format("总分:{0}\r\n总得分:{1}\r\n答对题数:{2}\r\n答错题数:{3}\r\n已做题总数:{4}\r\n试卷总题数:{5}\r\n未做题数:{6}\r\n正确率:{7}\r\n", data["max"], data["mark"], data["success"], data["error"], data["all"], data["num"], data["done"], data["CorrectRate"]);
                //MessageBox.Show(msg);
                frmMain.ShowResult(data, _questions, _gid);
            }
            else if (b == null)
            {
                frmMain.ShowLogin(callBack_submit);
            }
        }
Esempio n. 3
0
        public static void ShowNote(question_data data)
        {
            frmNote note = new frmNote(data);

            note.Owner = _this;
            note.ShowDialog();
        }
Esempio n. 4
0
        private void btnWrong_Click(object sender, RoutedEventArgs e)
        {
            var param = new
            {
                token = Config.Token,
                phone = Config.Phone,
                id    = _gid,
            };
            var re = HttpHelper.Post(Config.Server + "/record/wrong", param);
            var b  = HttpHelper.IsOk(re);

            if (b == true)
            {
                var data = re["data"];
                List <question_data> qlist = new List <question_data>();
                foreach (var v in data)
                {
                    //E_Question_Type type = (E_Question_Type)Enum.Parse(typeof(E_Question_Type), vv.Name, true);
                    var           json = v.ToString();
                    question_data obj  = JsonConvert.DeserializeObject <question_data>(json);
                    qlist.Add(obj);
                }
                _main.SwitchPage(E_Page_Type.analysis, qlist);
                this.Close();
            }
        }
Esempio n. 5
0
        private void uc_question_bottom_Select_Event(int index, int next)
        {
            var b = uc_question.JudgeAnswer();

            if (b != null)
            {
                var           arr = uc_question.Answer;
                string        str = string.Join(",", arr);
                question_data qd  = _questions[index];
                Answer_Data   ad  = new Answer_Data
                {
                    qid    = qd.qid,
                    select = str,
                    type   = qd.type,
                };
                if (!_answer_List.ContainsKey(index))
                {
                    _answer_List.Add(index, ad);
                }
                else
                {
                    _answer_List[index] = ad;
                }
                uc_question_bottom.SetColor(index, (bool)b);
                uc_question_bottom.SetText(_answer_List.Count, _questions.Count - _answer_List.Count);
                if (index > _max_index)
                {
                    _max_index = index;
                }
            }
            showQuestion(next);
        }
Esempio n. 6
0
        private void Selected_App(JObject data)
        {
            if (data != null)
            {
                _questions.Clear();
                _gid = data["gid"].ToString();
                _answer_List.Clear();
                var param = new
                {
                    id    = _gid,
                    token = Config.Token,
                    phone = Config.Phone,
                };
                Stopwatch sw = new Stopwatch();
                sw.Start();

                var re = HttpHelper.Post(Config.Server + "/api/app", param);

                sw.Stop();
                TimeSpan ts = sw.Elapsed;
                Console.WriteLine(Config.Server + "/api/app post {0}", ts.TotalMilliseconds);

                var b = HttpHelper.IsOk(re);
                if (b == true)
                {
                    var data1 = re["data"];
                    foreach (var v in data1)
                    {
                        //E_Question_Type type = (E_Question_Type)Enum.Parse(typeof(E_Question_Type), vv.Name, true);
                        var           json = v.ToString();
                        question_data obj  = JsonConvert.DeserializeObject <question_data>(json);
                        _questions.Add(obj);
                    }
                    if (frmMain.Study_Data.ContainsKey(_gid))
                    {
                        int index = frmMain.Study_Data[_gid];
                        if (index <= _questions.Count && index > 0)
                        {
                            showQuestion(index - 1);
                            uc_question_bottom.Refresh(_questions.Count, index - 1);
                        }
                        else
                        {
                            showQuestion(0);
                            uc_question_bottom.Refresh(_questions.Count);
                        }
                    }
                    else
                    {
                        showQuestion(0);
                        uc_question_bottom.Refresh(_questions.Count);
                    }
                }
                else if (b == null)
                {
                    frmMain.ShowLogin(callback_Selected, data);
                }
            }
        }
Esempio n. 7
0
 // Use this for initialization
 void Start()
 {
     seito_id   = login.student_id;
     qd         = MenuBoard.qd[MenuBoard.openID];
     title.text = qd.question_title;
     main.text  = qd.main;
     url        = SceneSelect.UrlString;
     code       = url + "/unity/registerAnswer.php";
 }
Esempio n. 8
0
    private IEnumerator Post2(string url, Dictionary <string, string> post, int point)
    {
        WWWForm form = new WWWForm();

        foreach (KeyValuePair <string, string> post_arg in post)
        {
            form.AddField(post_arg.Key, post_arg.Value);
        }
        WWW www = new WWW(url, form);

        yield return(StartCoroutine(CheckTimeOut(www, 3f)));        //TimeOutSecond = 3s;

        if (www.error != null)
        {
            Debug.Log("HttpPost NG: " + www.error);
            urlError = true;
            //そもそも接続ができていないとき
        }
        else if (www.isDone)
        {
            //送られてきたデータをテキストに反映
            status2 = www.text;
            Debug.Log(status2);
            questionsplit = status2.Split(splitter, StringSplitOptions.None);

            qd[point]                = new question_data();
            qd[point].question_id    = Int32.Parse(questionsplit[0]);
            qd[point].question_title = questionsplit[1];
            qd[point].question_type  = questionsplit[2];
            qd[point].main           = questionsplit[3];
            qd[point].tate           = Double.Parse(questionsplit[4]);
            qd[point].yoko           = Double.Parse(questionsplit[5]);
            qd[point].takasa         = Double.Parse(questionsplit[6]);
            qd[point].zukei_type     = questionsplit[7];
            qd[point].answer         = questionsplit[8];
            qd[point].kaisetsu       = questionsplit[9];
            qd[point].allready       = questionsplit[10];
            qd[point].kaitou         = questionsplit[11];
            qd[point].saiten         = questionsplit[12];

            Debug.Log(message: "q_id =" + qd[point].question_id);
//			Debug.Log(message: "q_title =" + qd[point].question_title);
//			Debug.Log(message: "q_type =" + qd[point].question_type);
//			Debug.Log(message: "q_main =" + qd[point].main);
//			Debug.Log(message: "q_tate =" + qd[point].tate);
//			Debug.Log(message: "q_yoko =" + qd[point].yoko);
//			Debug.Log(message: "q_takasa =" + qd[point].takasa);
//			Debug.Log(message: "q_zukei_type =" + qd[point].zukei_type);
//			Debug.Log(message: "q_answer =" + qd[point].answer);
//			Debug.Log(message: "q_kaisetsu =" + qd[point].kaisetsu);
//			Debug.Log(message: "q_allready =" + qd[point].allready);
//			Debug.Log(message: "q_kaitou =" + qd[point].kaitou);
//			Debug.Log(message: "q_saiten =" + qd[point].saiten);
        }
    }
Esempio n. 9
0
 // Use this for initialization
 void Start()
 {
     qd            = MenuBoard.qd[MenuBoard.openID];
     title.text    = qd.question_title;
     main.text     = qd.main;
     answer2.text  = qd.answer;
     kaitou.text   = qd.kaitou;
     kaisetsu.text = qd.kaisetsu;
     if (qd.saiten == "yes")
     {
         saiten.text = "正解";
     }
     else
     {
         saiten.text = "不正解";
     }
 }
Esempio n. 10
0
 public frmComment(question_data data)
 {
     InitializeComponent();
     _data = data;
 }
Esempio n. 11
0
    // Use this for initialization
    void Start()
    {
        seito_id   = login.student_id;
        qd         = MenuBoard.qd[MenuBoard.openID];
        title.text = qd.question_title;
        main.text  = qd.main;
        url        = SceneSelect.UrlString;
        code       = url + "/unity/registerAnswer.php";

        /*
         * Gameobject test = (GameObject)Instantiate(入れるオブジェクト,obj.transform);
         */
        if (qd.tate == qd.yoko && qd.yoko == qd.tate)
        {
            tate   = scale;
            yoko   = tate;
            takasa = yoko;
        }
        else if (qd.tate == qd.yoko && qd.yoko > qd.takasa)
        {
            tate   = scale;
            yoko   = tate;
            takasa = scale * (qd.takasa / qd.yoko);
        }
        else if (qd.tate == qd.yoko && qd.yoko < qd.takasa)
        {
            takasa = scale;
            yoko   = takasa * (qd.yoko / qd.takasa);
            tate   = yoko;
        }
        else if (qd.tate > qd.yoko && qd.yoko == qd.takasa)
        {
            tate   = scale;
            yoko   = tate * (qd.yoko / qd.tate);
            takasa = yoko;
        }
        else if (qd.tate < qd.yoko && qd.yoko == qd.takasa)
        {
            takasa = scale;
            yoko   = takasa;
            tate   = takasa * (qd.tate / qd.yoko);
        }
        else if (qd.tate > qd.yoko && qd.yoko > qd.takasa)
        {
            tate   = scale;
            yoko   = tate * (qd.yoko / qd.tate);
            takasa = yoko * (qd.takasa / qd.yoko);
        }
        else if (qd.tate > qd.yoko && qd.yoko < qd.takasa)
        {
            if (qd.tate < qd.takasa)
            {
                takasa = scale;
                tate   = takasa * (qd.tate / qd.tate);
                yoko   = tate * (qd.yoko / qd.tate);
            }
            else
            {
                tate   = scale;
                takasa = tate * (qd.takasa / qd.tate);
                yoko   = tate * (qd.yoko / qd.takasa);
            }
        }
        else if (qd.tate < qd.yoko && qd.yoko < qd.takasa)
        {
            takasa = scale;
            yoko   = takasa * (qd.yoko / qd.takasa);
            tate   = yoko * (qd.tate / qd.yoko);
        }
        else if (qd.tate < qd.yoko && qd.yoko > qd.takasa)
        {
            yoko = scale;

            if (qd.tate < qd.takasa)
            {
                takasa = yoko * (qd.takasa / qd.yoko);
                tate   = takasa * (qd.tate / qd.takasa);
            }
            else
            {
                tate   = yoko * (qd.tate / qd.yoko);
                takasa = tate * (qd.takasa / qd.tate);
            }
        }

        if (qd.zukei_type == "cube")         //立方体
        {
            obj.GetComponent <MeshFilter>().mesh      = cube;
            obj.GetComponent <Transform>().localScale = new Vector3((float)yoko, (float)takasa, (float)tate);
        }
        else if (qd.zukei_type == "triangularprism")         //三角柱
        {
            obj.GetComponent <MeshFilter>().mesh      = triangularprism;
            obj.GetComponent <Transform>().localScale = new Vector3((float)yoko, (float)takasa, (float)tate);
        }
        else if (qd.zukei_type == "squarepyramid")         //四角錐
        {
            obj.GetComponent <MeshFilter>().mesh      = pyramid;
            obj.GetComponent <Transform>().localScale = new Vector3((float)yoko, (float)takasa, (float)tate);
        }
        else if (qd.zukei_type == "trianglepyramid")         //三角錐
        {
            obj.GetComponent <MeshFilter>().mesh      = triangularpyramid;
            obj.GetComponent <Transform>().localScale = new Vector3((float)yoko, (float)takasa, (float)tate);
        }
        else if (qd.zukei_type == "cylinder")         //円柱
        {
            obj.GetComponent <MeshFilter>().mesh      = cylinder;
            obj.GetComponent <Transform>().localScale = new Vector3((float)yoko, (float)takasa, (float)tate);
        }
        else if (qd.zukei_type == "cone")         //円錐
        {
            obj.GetComponent <MeshFilter>().mesh      = cone;
            obj.GetComponent <Transform>().localScale = new Vector3((float)yoko, (float)takasa, (float)tate);
        }
    }
Esempio n. 12
0
    // Use this for initialization
    void Start()
    {
        //MainSpriteRenderer = gameObject.GetComponent<SpriteRenderer>();
        seito_id   = login.student_id;
        qd         = MenuBoard.qd[MenuBoard.openID];
        title.text = qd.question_title;
        main.text  = qd.main;
        url        = SceneSelect.UrlString;
        code       = url + "/unity/registerAnswer.php";

        //ここで図形を切り替えて大きさも視野に入れて表示する
        //図形は謎だから画像を使う

        if (qd.zukei_type == "triangle")         //三角形
        {
            MainSpriteRenderer.sprite = triangle;
            if (qd.tate == qd.yoko)             //正三角形
            {
                tate.text = qd.tate.ToString();
                yoko.text = qd.yoko.ToString();
            }
            else if (qd.tate >= qd.yoko)             //横が長い三角形
            {
                int Yokohiritu = (int)(200 / (qd.tate / qd.yoko));
                spriteX.localScale = new Vector3(200, Yokohiritu, 0);
                size = qd.tate / qd.yoko;
                yoko.rectTransform.localScale = new Vector3(1, (float)size, 1);
                tate.rectTransform.localScale = new Vector3(1, (float)size, 1);

                tate.text = qd.yoko.ToString();
                yoko.text = qd.tate.ToString();
            }
            else             //縦が長い三角形
            {
                int Tatehiritu = (int)(200 / (qd.yoko / qd.tate));
                spriteX.localScale = new Vector3(Tatehiritu, 200, 0);
                size = qd.yoko / qd.tate;
                tate.rectTransform.localScale = new Vector3((float)size, 1, 1);
                yoko.rectTransform.localScale = new Vector3((float)size, 1, 1);

                tate.text = qd.yoko.ToString();
                yoko.text = qd.tate.ToString();
            }
            //spriteX.localScale.Set(144,144,1);
        }
        else if (qd.zukei_type == "square")         //四角形
        {
            //Debug.Log(qd.tate.ToString()+":"+qd.yoko.ToString());
            MainSpriteRenderer.sprite = square;
            if (qd.tate == qd.yoko)             //正四角形
            {
                tate.text = qd.tate.ToString();
                yoko.text = qd.yoko.ToString();
            }
            else if (qd.tate >= qd.yoko)            //横が長い四角形
            {
                int Yokohiritu = (int)(200 / (qd.tate / qd.yoko));
                spriteX.localScale = new Vector3(200, Yokohiritu, 0);
                size = qd.tate / qd.yoko;
                yoko.rectTransform.localScale = new Vector3(1, (float)size, 1);
                tate.rectTransform.localScale = new Vector3(1, (float)size, 1);

                tate.text = qd.yoko.ToString();
                yoko.text = qd.tate.ToString();
            }
            else             //縦が長い四角形
            {
                int Tatehiritu = (int)(200 / (qd.yoko / qd.tate));
                spriteX.localScale = new Vector3(Tatehiritu, 200, 0);
                size = qd.yoko / qd.tate;
                tate.rectTransform.localScale = new Vector3((float)size, 1, 1);
                yoko.rectTransform.localScale = new Vector3((float)size, 1, 1);

                tate.text = qd.yoko.ToString();
                yoko.text = qd.tate.ToString();
            }
        }
        else if (qd.zukei_type == "diamond")
        {
            MainSpriteRenderer.sprite = diamond;
            if (qd.tate == qd.yoko)             //正四角形
            {
                tate.text = qd.tate.ToString();
                yoko.text = qd.yoko.ToString();
            }
            else if (qd.tate >= qd.yoko)            //横が長い四角形
            {
                int Yokohiritu = (int)(200 / (qd.tate / qd.yoko));
                spriteX.localScale = new Vector3(200, Yokohiritu, 0);
                size = qd.tate / qd.yoko;
                yoko.rectTransform.localScale = new Vector3(1, (float)size, 1);
                tate.rectTransform.localScale = new Vector3(1, (float)size, 1);

                tate.text = qd.yoko.ToString();
                yoko.text = qd.tate.ToString();
            }
            else             //縦が長い四角形
            {
                int Tatehiritu = (int)(200 / (qd.yoko / qd.tate));
                spriteX.localScale = new Vector3(Tatehiritu, 200, 0);
                size = qd.yoko / qd.tate;
                tate.rectTransform.localScale = new Vector3((float)size, 1, 1);
                yoko.rectTransform.localScale = new Vector3((float)size, 1, 1);

                tate.text = qd.yoko.ToString();
                yoko.text = qd.tate.ToString();
            }
        }
        else if (qd.zukei_type == "circle")
        {
            MainSpriteRenderer.sprite = circle;
            tate.text = qd.tate.ToString();
            yoko.text = qd.yoko.ToString();
        }
    }