개별보기시 마우스오버된 그룹정보 표시가 0번만 표시되는 현상 수정
This commit is contained in:
@@ -51,7 +51,7 @@ namespace vmsnet.HMI
|
|||||||
{
|
{
|
||||||
public bool MonitorOn { get; set; }
|
public bool MonitorOn { get; set; }
|
||||||
public CMouseinfo Mouseinfo; //마우스위치정보
|
public CMouseinfo Mouseinfo; //마우스위치정보
|
||||||
|
|
||||||
//그룹데이터
|
//그룹데이터
|
||||||
public CGROUP[] GROUPS = new CGROUP[0];
|
public CGROUP[] GROUPS = new CGROUP[0];
|
||||||
public CWINDOW WINDOW = new CWINDOW();
|
public CWINDOW WINDOW = new CWINDOW();
|
||||||
@@ -1543,7 +1543,7 @@ namespace vmsnet.HMI
|
|||||||
{
|
{
|
||||||
using (var ifont = new Font(this.font_header, FontStyle.Bold))
|
using (var ifont = new Font(this.font_header, FontStyle.Bold))
|
||||||
{
|
{
|
||||||
String nbstr = "▣ NULL BALANCE ▣";
|
String nbstr = $"▣ {grp.이름} - NULL BALANCE ▣";
|
||||||
nbstr += "\n\n▶L:" + grp._null_valueL.ToString("#0.00") + "v";
|
nbstr += "\n\n▶L:" + grp._null_valueL.ToString("#0.00") + "v";
|
||||||
nbstr += ",R:" + grp._null_valueR.ToString("#0.00") + "v";
|
nbstr += ",R:" + grp._null_valueR.ToString("#0.00") + "v";
|
||||||
nbstr += " ▶DEV(R-L):" + (grp._null_valueR - grp._null_valueL).ToString("#0.00") + "v";
|
nbstr += " ▶DEV(R-L):" + (grp._null_valueR - grp._null_valueL).ToString("#0.00") + "v";
|
||||||
@@ -1653,7 +1653,7 @@ namespace vmsnet.HMI
|
|||||||
this.WINDOW._itemheight = WindowRect.Height / this.WINDOW.RowCount;
|
this.WINDOW._itemheight = WindowRect.Height / this.WINDOW.RowCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (this.GROUPS.Length < 1)
|
if (this.GROUPS.Length < 1)
|
||||||
{
|
{
|
||||||
g.DrawString("NO Group", this.Font, Brushes.Red, WindowRect.Left, WindowRect.Top);
|
g.DrawString("NO Group", this.Font, Brushes.Red, WindowRect.Left, WindowRect.Top);
|
||||||
@@ -1672,19 +1672,35 @@ namespace vmsnet.HMI
|
|||||||
var 열번호 = grp.열번호;
|
var 열번호 = grp.열번호;
|
||||||
var 줄번호 = grp.줄번호;
|
var 줄번호 = grp.줄번호;
|
||||||
|
|
||||||
|
//전체화면이 아닌경우라면 지정된 그룹만 표시한다
|
||||||
if (FullScreen == false)
|
if (FullScreen == false)
|
||||||
{
|
{
|
||||||
if (ShowIndex < 0 || ShowIndex > this.GROUPS.GetUpperBound(0)) visible = false;
|
if (ShowIndex < 0 || ShowIndex > this.GROUPS.GetUpperBound(0)) visible = false; //인덱스오류체크
|
||||||
else visible = (idx == ShowIndex);
|
else visible = (idx == ShowIndex);
|
||||||
열번호 = 0;
|
열번호 = 0;
|
||||||
줄번호 = 0;
|
줄번호 = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//마우스를 올린경우 추가정보 표시
|
||||||
if (grp.Showinfo) infogrp = grp;
|
if (grp.Showinfo) infogrp = grp;
|
||||||
else DrawGroup(g, grp, new Point(0, 0), new SizeF(WINDOW.ITEMWIDTH, WINDOW.ITEMHEIGHT), WindowRect, 열번호, 줄번호, false, visible);
|
else DrawGroup(g, grp, new Point(0, 0), new SizeF(WINDOW.ITEMWIDTH, WINDOW.ITEMHEIGHT), WindowRect, 열번호, 줄번호, false, visible);
|
||||||
idx += 1;
|
idx += 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (infogrp != null)
|
if (infogrp != null)
|
||||||
DrawGroup(g, infogrp, new Point(0, 0), new SizeF(WINDOW.ITEMWIDTH, WINDOW.ITEMHEIGHT), WindowRect, infogrp.열번호, infogrp.줄번호, false, true);
|
{
|
||||||
|
var colnum = infogrp.열번호;
|
||||||
|
var rownum = infogrp.줄번호;
|
||||||
|
if (FullScreen == false)
|
||||||
|
{
|
||||||
|
colnum = 0;
|
||||||
|
rownum = 0;
|
||||||
|
}
|
||||||
|
DrawGroup(g, infogrp, new Point(0, 0), new SizeF(WINDOW.ITEMWIDTH, WINDOW.ITEMHEIGHT), WindowRect, colnum, rownum, false, true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
//end group
|
//end group
|
||||||
//}
|
//}
|
||||||
@@ -1879,6 +1895,9 @@ namespace vmsnet.HMI
|
|||||||
private int Check_GroupHeader(MouseEventArgs e, Boolean resetshowinfo = false)
|
private int Check_GroupHeader(MouseEventArgs e, Boolean resetshowinfo = false)
|
||||||
{
|
{
|
||||||
if (this.GROUPS == null) return -1;
|
if (this.GROUPS == null) return -1;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
for (int i = 0; i < this.GROUPS.Length; i++)
|
for (int i = 0; i < this.GROUPS.Length; i++)
|
||||||
{
|
{
|
||||||
RectangleF rect = this.GROUPS[i].Rect_Header;
|
RectangleF rect = this.GROUPS[i].Rect_Header;
|
||||||
@@ -1887,7 +1906,16 @@ namespace vmsnet.HMI
|
|||||||
//현재위치가 해당 Rectagle 안이라면 속해있다.
|
//현재위치가 해당 Rectagle 안이라면 속해있다.
|
||||||
if (e.X > rect.X && e.X < rect.X + rect.Width)
|
if (e.X > rect.X && e.X < rect.X + rect.Width)
|
||||||
{
|
{
|
||||||
if (e.Y > rect.Y && e.Y < rect.Y + rect.Height) return i;
|
if (e.Y > rect.Y && e.Y < rect.Y + rect.Height)
|
||||||
|
{
|
||||||
|
//전체화면이 아닌경우에는 선택된 그룹번호를 반환
|
||||||
|
if (this.FullScreen == false)
|
||||||
|
{
|
||||||
|
if (this.ShowIndex < 0 || this.ShowIndex >= this.GroupCount) return -1;
|
||||||
|
else return this.ShowIndex;
|
||||||
|
}
|
||||||
|
else return i;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return -1;
|
return -1;
|
||||||
|
|||||||
Reference in New Issue
Block a user