Exemplo n.º 1
0
        /// <summary>
        /// 确定操作
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSure_Click(object sender, EventArgs e)
        {
            try
            {
                ClsLine templine = new ClsLine();

                templine.Id    = Id.ToString();
                templine.Penid = cboPenType.Text;
                templine.X1    = Convert.ToSingle(numD_X1.Value);
                templine.Y1    = Convert.ToSingle(numD_Y1.Value);
                templine.X2    = Convert.ToSingle(numD_X2.Value);
                templine.Y2    = Convert.ToSingle(numD_Y2.Value);

                templine.Times = Convert.ToInt16(numD_Times.Value);
                if (txtSpan.Text.Trim() != "")
                {
                    templine.Spans = Convert.ToSingle(txtSpan.Text);
                }
                else
                {
                    templine.Spans = 0;
                }
                templine.Direction = cboDirctionType.Text;


                cm.newnode      = new TreeNode();
                cm.newnode.Text = "线-" + Id.ToString();
                cm.newnode.Name = Id.ToString();
                cm.newnode.Tag  = templine;
                this.Close();
            }
            catch
            {
                cm.newnode = null;
            }
        }
Exemplo n.º 2
0
 /// <summary>
 ///     ''' マウスボタンアップ
 ///     ''' </summary>
 ///     ''' <param name="sender"></param>
 ///     ''' <param name="e"></param>
 ///     ''' <remarks></remarks>
 private void PanelPaint_MouseUp(System.Object sender, System.Windows.Forms.MouseEventArgs e)
 {
     //
     if (e.Button == MouseButtons.Left)
     {
         // ドラッグ終了
         if (isPainting)
         {
             isDragging = false;
             endPoint.X = e.X;
             endPoint.Y = e.Y;
         }
         //文字入力終了
         if (isInputtingText)
         {
             if (checkBoxBrush.Checked)
             {
                 textBrush = paintBrush;
             }
             else
             {
                 textBrush = new SolidBrush(TransparentColor);
             }
             if (checkBoxLine.Checked)
             {
                 textPen = paintPen;
             }
             else
             {
                 textPen = new Pen(TransparentColor, 1);
             }
             ClsFigure gText = new ClsGText(textPen, textBrush, paintTextFont, paintTextColor,
                                            inputTextBox.Left, inputTextBox.Top,
                                            inputTextBox.Width, inputTextBox.Height, inputTextBox.Text);
             inputTextBox.Dispose();
             isPainting      = false;
             isInputtingText = false;
             figList.Add(gText);
             reFigList.Clear();
             PanelPaint.Refresh();
             lastFigure = gText.castClassFigure();
         }
         // パーツ確定
         if (isPaintingRectangle)
         {
             int       leftTopX = startPoint.X > endPoint.X ? endPoint.X : startPoint.X;
             int       leftTopY = startPoint.Y > endPoint.Y ? endPoint.Y : startPoint.Y;
             ClsFigure rect     = new ClsRectangle(paintPen, paintBrush,
                                                   leftTopX, leftTopY,
                                                   Math.Abs(endPoint.X - startPoint.X), Math.Abs(endPoint.Y - startPoint.Y));
             figList.Add(rect);
             reFigList.Clear();
             PanelPaint.Refresh();
             lastFigure = rect.castClassFigure();
         }
         else if (isPaintingEllipse)
         {
             int       leftTopX = startPoint.X > endPoint.X ? endPoint.X : startPoint.X;
             int       leftTopY = startPoint.Y > endPoint.Y ? endPoint.Y : startPoint.Y;
             ClsFigure elps     = new ClsEllipse(paintPen, paintBrush,
                                                 leftTopX, leftTopY,
                                                 Math.Abs(endPoint.X - startPoint.X), Math.Abs(endPoint.Y - startPoint.Y));
             figList.Add(elps);
             reFigList.Clear();
             PanelPaint.Refresh();
             lastFigure = elps.castClassFigure();
         }
         else if (isPaintingLine)
         {
             ClsFigure line = new ClsLine(paintPen,
                                          startPoint.X, startPoint.Y,
                                          endPoint.X, endPoint.Y);
             figList.Add(line);
             reFigList.Clear();
             PanelPaint.Refresh();
             lastFigure = line.castClassFigure();
         }
         else if (isPaintingArrow)
         {
             ClsFigure arrow = new ClsArrow(paintPen,
                                            startPoint.X, startPoint.Y,
                                            endPoint.X, endPoint.Y);
             figList.Add(arrow);
             reFigList.Clear();
             PanelPaint.Refresh();
             lastFigure = arrow.castClassFigure();
         }
         else if (isPaintingText)
         {
             //入力用リッチテキストボックスの設定
             inputTextBox = new AlphaControls.AlphaRichTextBox();
             if (checkBoxBrush.Checked && brushColor.A > 0)
             {
                 inputTextBox.BackAlpha = brushColor.A;
                 inputTextBox.BackColor = Color.FromArgb(brushColor.R, brushColor.G, brushColor.B);
             }
             else
             {
                 inputTextBox.BackAlpha = 0;
                 inputTextBox.BackColor = Color.White;
             }
             inputTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
             inputTextBox.Font        = paintTextFont;
             inputTextBox.ForeColor   = paintTextColor;
             inputTextBox.Location    = new System.Drawing.Point(startPoint.X, startPoint.Y);
             inputTextBox.Multiline   = true;
             inputTextBox.Name        = "inputTextBox";
             int width = (endPoint.X != startPoint.X) ? (int)Math.Abs(endPoint.X - startPoint.X) : 320;
             inputTextBox.Size = new System.Drawing.Size(
                 width,
                 (int)(TextRenderer.MeasureText("あ", paintTextFont).Height + inputTextBox.Margin.Vertical));
             inputTextBox.TabIndex     = 0;
             inputTextBox.ImeMode      = ImeMode.Off;
             inputTextBox.TextChanged += new EventHandler(inputTextBox_TextChanged);
             ControlsTransparent(inputTextBox, PanelPaint);
             //強制的にフォーカス
             inputTextBox.Focus();
             isPaintingText  = false;
             isInputtingText = true;
         }
         else if (isPaintingFreehand)
         {
             ClsFigure freehand = new ClsFreehand(paintPen, freeHandX, freeHandY);
             figList.Add(freehand);
             reFigList.Clear();
             PanelPaint.Refresh();
             lastFigure = freehand.castClassFigure();
         }
     }
 }
Exemplo n.º 3
0
 /// <summary>
 /// 描画
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void PanelPaint_Paint(System.Object sender, System.Windows.Forms.PaintEventArgs e)
 {
     // パーツ描画
     for (int i = 0; i <= figList.Count - 1; i++)
     {
         figList[i].Draw(e.Graphics);
     }
     // ドラッグ中は長方形描画
     if (isDragging)
     {
         if (!isPaintingFreehand)
         {
             // 範囲の描画
             // |
             e.Graphics.DrawLine(blacDotPen, startPoint.X, startPoint.Y, startPoint.X, nowPoint.Y);
             // |
             e.Graphics.DrawLine(blacDotPen, nowPoint.X, startPoint.Y, nowPoint.X, nowPoint.Y);
             //  ̄
             e.Graphics.DrawLine(blacDotPen, startPoint.X, startPoint.Y, nowPoint.X, startPoint.Y);
             // _
             e.Graphics.DrawLine(blacDotPen, startPoint.X, nowPoint.Y, nowPoint.X, nowPoint.Y);
         }
         // 仮描画
         if (isPaintingRectangle)
         {
             int          leftTopX = startPoint.X > nowPoint.X ? nowPoint.X : startPoint.X;
             int          leftTopY = startPoint.Y > nowPoint.Y ? nowPoint.Y : startPoint.Y;
             ClsRectangle rect     = new ClsRectangle(paintPen, paintBrush,
                                                      leftTopX, leftTopY,
                                                      Math.Abs(nowPoint.X - startPoint.X), Math.Abs(nowPoint.Y - startPoint.Y));
             rect.Draw(e.Graphics);
         }
         else if (isPaintingEllipse)
         {
             int        leftTopX = startPoint.X > nowPoint.X ? nowPoint.X : startPoint.X;
             int        leftTopY = startPoint.Y > nowPoint.Y ? nowPoint.Y : startPoint.Y;
             ClsEllipse elps     = new ClsEllipse(paintPen, paintBrush,
                                                  leftTopX, leftTopY,
                                                  Math.Abs(nowPoint.X - startPoint.X), Math.Abs(nowPoint.Y - startPoint.Y));
             elps.Draw(e.Graphics);
         }
         else if (isPaintingLine)
         {
             ClsFigure line = new ClsLine(paintPen,
                                          startPoint.X, startPoint.Y,
                                          nowPoint.X, nowPoint.Y);
             line.Draw(e.Graphics);
         }
         else if (isPaintingArrow)
         {
             ClsFigure arrow = new ClsArrow(paintPen,
                                            startPoint.X, startPoint.Y,
                                            nowPoint.X, nowPoint.Y);
             arrow.Draw(e.Graphics);
         }
         else if (isPaintingFreehand)
         {
             ClsFigure freehand = new ClsFreehand(paintPen, freeHandX, freeHandY);
             freehand.Draw(e.Graphics);
         }
     }
 }
Exemplo n.º 4
0
 private void picTemperatureShow_MouseMove(object sender, MouseEventArgs e)
 {
     _strTip           = "";
     _ptTip            = new Point(e.X + 10, e.Y);
     tlbllocation.Text = "当前鼠标坐标:" + "X:" + e.X.ToString() + "     Y:" + e.Y.ToString();
     if (tdrag)
     {
         int spanx = e.X - p1.X;
         int spany = e.Y - p1.Y;
         try
         {
             if (trvTemperture.SelectedNode.Tag != null)
             {
                 if (trvTemperture.SelectedNode.Tag.ToString() == "TempertureEditor.Element.ClsRec")
                 {
                     ClsRec    temp = (ClsRec)trvTemperture.SelectedNode.Tag;
                     Rectangle rec  = new Rectangle(temp.Rec.X + spanx, temp.Rec.Y + spany, temp.Rec.Width, temp.Rec.Height);
                     temp.Rec = rec;
                     trvTemperture.SelectedNode.Tag = temp;
                 }
                 else if (trvTemperture.SelectedNode.Tag.ToString() == "TempertureEditor.Element.ClsLine")
                 {
                     ClsLine temp = (ClsLine)trvTemperture.SelectedNode.Tag;
                     temp.X1 = temp.X1 + spanx;
                     temp.Y1 = temp.Y1 + spany;
                     temp.X2 = temp.X2 + spanx;
                     temp.Y2 = temp.Y2 + spany;
                     trvTemperture.SelectedNode.Tag = temp;
                 }
                 else if (trvTemperture.SelectedNode.Tag.ToString() == "TempertureEditor.Element.ClsText")
                 {
                     ClsText temp = (ClsText)trvTemperture.SelectedNode.Tag;
                     temp.X1 = temp.X1 + spanx;
                     temp.Y1 = temp.Y1 + spany;
                     trvTemperture.SelectedNode.Tag = temp;
                 }
                 else if (trvTemperture.SelectedNode.Tag.ToString() == "TempertureEditor.Element.ClsText")
                 {
                     ClsText temp = (ClsText)trvTemperture.SelectedNode.Tag;
                     temp.X1 = temp.X1 + spanx;
                     temp.Y1 = temp.Y1 + spany;
                     trvTemperture.SelectedNode.Tag = temp;
                 }
                 else if (trvTemperture.SelectedNode.Tag.ToString() == "TempertureEditor.Element.ClsImg")
                 {
                     ClsImg temp = (ClsImg)trvTemperture.SelectedNode.Tag;
                     temp.X = temp.X + spanx;
                     temp.Y = temp.Y + spany;
                     trvTemperture.SelectedNode.Tag = temp;
                 }
                 this.propertyGrid1.SelectedObject = trvTemperture.SelectedNode.Tag;
             }
         }
         catch
         {
         }
         p1.X = e.X;
         p1.Y = e.Y;
         this.picTemperatureShow.Refresh();
     }
     else
     {
         foreach (Page page in cm.Pages)
         {
             foreach (ClsDataObj obj in page.Objs)
             {
                 //if(obj.Typename== "TempertureEditor.Element.ClsLinedata")
                 object objtype = cm.GetVDataSetByName(obj.Typename);
                 if (objtype == null)
                 {
                     continue;
                 }
                 if (objtype.ToString() == "TempertureEditor.Element.ClsLinedata")
                 {
                     ClsLinedata lindedata = (ClsLinedata)objtype;
                     ClsSymbol   symbol    = cm.getClsSymbolByName(lindedata.Symbolname);
                     if (symbol != null)
                     {
                         Rectangle rc = new Rectangle((int)obj.X, (int)obj.Y, Convert.ToInt32(symbol.fontsize) + symbol.cx, Convert.ToInt32(symbol.fontsize) + symbol.cy);
                         if (rc.Contains(e.X, e.Y))
                         {
                             _strTip = obj.Val.ToString();
                             break;
                         }
                     }
                 }
             }
         }
         picTemperatureShow.Refresh();
     }
 }
Exemplo n.º 5
0
        /// <summary>
        /// 整体调整位置
        /// </summary>
        /// <param name="span_rx"></param>
        /// <param name="span_ry"></param>
        /// <param name="isSelectNode"></param>
        private void AllElementReLocation(int span_rx, int span_ry, bool isSelectNode)
        {
            try
            {
                foreach (TreeNode tn in trvTemperture.Nodes)
                {
                    foreach (TreeNode tnelement in tn.Nodes)
                    {
                        //元素集合

                        if (isSelectNode)
                        {
                            if (trvTemperture.SelectedNode != null)
                            {
                                if (tnelement.Name != trvTemperture.SelectedNode.Name)
                                {
                                    continue;
                                }
                            }
                            else
                            {
                                break;
                            }
                        }
                        if (tn.Name == "element")
                        {
                            if (tnelement.Tag.ToString().Contains("ClsRec"))
                            {
                                ClsRec    temp = (ClsRec)tnelement.Tag;
                                Rectangle rec  = new Rectangle(temp.Rec.X + span_rx, temp.Rec.Y + span_ry, temp.Rec.Width, temp.Rec.Height);
                                temp.Rec      = rec;
                                tnelement.Tag = temp;
                                cm.UpdateXml(1, tnelement, cm.XmlDoc, trvTemperture);
                            }
                            else if (tnelement.Tag.ToString() == "TempertureEditor.Element.ClsText")
                            {
                                ClsText temp = (ClsText)tnelement.Tag;
                                temp.X1       = temp.X1 + span_rx;
                                temp.Y1       = temp.Y1 + span_ry;
                                tnelement.Tag = temp;
                                cm.UpdateXml(1, tnelement, cm.XmlDoc, trvTemperture);
                            }
                            else if (tnelement.Tag.ToString() == "TempertureEditor.Element.ClsLine")
                            {
                                ClsLine temp = (ClsLine)tnelement.Tag;
                                temp.X1       = temp.X1 + span_rx;
                                temp.Y1       = temp.Y1 + span_ry;
                                temp.X2       = temp.X2 + span_rx;
                                temp.Y2       = temp.Y2 + span_ry;
                                tnelement.Tag = temp;
                                cm.UpdateXml(1, tnelement, cm.XmlDoc, trvTemperture);
                            }
                            else if (tnelement.Tag.ToString() == "TempertureEditor.Element.ClsImg")
                            {
                                ClsImg temp = (ClsImg)tnelement.Tag;
                                temp.X = temp.X + span_rx;
                                temp.Y = temp.Y + span_ry;

                                tnelement.Tag = temp;
                                cm.UpdateXml(1, tnelement, cm.XmlDoc, trvTemperture);
                            }
                        }
                        else if (tn.Name == "vdataset")
                        {
                            if (tnelement.Tag.ToString() == "TempertureEditor.Element.ClsLinedata")
                            {
                                ClsLinedata temp = (ClsLinedata)tnelement.Tag;
                                temp.X = temp.X + span_rx;
                                temp.Y = temp.Y + span_ry;

                                tnelement.Tag = temp;
                                cm.UpdateXml(1, tnelement, cm.XmlDoc, trvTemperture);
                                //cm.GetTestPages();
                            }
                            else if (tnelement.Tag.ToString() == "TempertureEditor.Element.ClsTextdata")
                            {
                                ClsTextdata temp = (ClsTextdata)tnelement.Tag;
                                temp.X = temp.X + span_rx;
                                temp.Y = temp.Y + span_ry;

                                tnelement.Tag = temp;
                                cm.UpdateXml(1, tnelement, cm.XmlDoc, trvTemperture);
                                //cm.GetTestPages();
                            }
                        }
                    }
                }
                if (trvTemperture.SelectedNode != null)
                {
                    propertyGrid1.SelectedObject = trvTemperture.SelectedNode.Tag;
                }
                cm.GetTestPages();
                this.picTemperatureShow.Refresh();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }