WinForms윈폼 시트에 도형(타원) 추가 문의 드립니다.
페이지 정보
작성자 이원규![](https://dev.mescius.co.kr/theme/hoho/img/lv2.png)
본문
관련링크
안녕하세요.
데이터 조회를 하여 시트에 아래와 같이 도형-타원을 아래와 같이 시트에 조회를 하고 싶습니다.
가능한 부분인지 확인 부탁 드립니다.
감사합니다.
1. 시트 해당 셀안에 도형(타원) 추가
2. 타원 채우기 / 윤곽선 칼라 변경
댓글목록
등록된 댓글이 없습니다.
안녕하세요.
데이터 조회를 하여 시트에 아래와 같이 도형-타원을 아래와 같이 시트에 조회를 하고 싶습니다.
가능한 부분인지 확인 부탁 드립니다.
감사합니다.
1. 시트 해당 셀안에 도형(타원) 추가
2. 타원 채우기 / 윤곽선 칼라 변경
등록된 댓글이 없습니다.
이원규 님, 안녕하세요.
그레이프시티입니다.
EllipseShape 객체를 생성하고 AddShape 메서드를 사용하여 셀 안에 도형(타원)을 추가하실 수 있습니다.
또한 도형의 BackColor 속성 및 ShapeOutlineColor 속성을 사용하여 윤곽선 칼라를 변경하실 수 있습니다.
아래 샘플코드 및 링크된 도움말 문서를 참고하여주시기 바랍니다.
// 새로운 도형을 생성합니다. FarPoint.Win.Spread.DrawingSpace.EllipseShape ellipse = new FarPoint.Win.Spread.DrawingSpace.EllipseShape(); // 고유한 기본 할당 이름을 재정의하여 이름을 할당합니다. // 시트 내의 모든 모양 이름은 고유해야 합니다. ellipse.Name = "eShape1"; // 도형을 표시하기 시작할 위치를 지정합니다. ellipse.Top = 20; ellipse.Left = 60; // 또는 다음과 같이 Point 객체를 사용하여 Location 속성을 설정할 수 있습니다.: // ellipse.Location = new Point(20, 60); // 도형에 사용자 지정 채우기 색상을 할당합니다. ellipse.BackColor = Color.Blue; // 도형 테두리 색상을 할당합니다. ellipse.ShapeOutlineColor = Color.Red; // 도형 사이즈를 할당합니다. ellipse.Width = 10; ellipse.Height = 10; // 또는 다음과 같이 Size 객체를 사용하여 Size 속성을 설정할 수 있습니다.: // ellipse.Size = new Size(10, 10); // 해당 시트에 나타나도록 시트에 도형을 추가합니다. // 도형을 추가할 행/열 인덱스를 선택할 수 있습니다. // 도형의 위쪽 경계와 지정된 행의 위쪽 사이의 거리, 도형의 왼쪽 경계와 열의 왼쪽 사이의 거리를 설정할 수 있습니다. // 도형의 왼쪽 위 모서리가 매개변수로 지정된 셀 내에 있는지 여부를 설정할 수 있습니다. fpSpread1.ActiveSheet.AddShape(ellipse, 1, 1, 5, 10, true);
- Spread for WinForms V11 | 코드로 도형 작업하기
- Spread for WinForms V11 | AddShape 메서드 목록
감사합니다.
그레이프시 드림
등록된 댓글이 없습니다.
등록된 댓글이 없습니다.
이원규 님, 안녕하세요.
그레이프시티입니다.
적용하신 AlignHorz, AlignVert 속성은 도형 내 컨텐츠를 정렬할 때 사용되는 속성입니다. 일례로, 사각형 도형 안에 "Text"라는 텍스트가 포함되어있을 때, 이 텍스트를 도형 내 좌상단에 정렬하고자 할 경우 사용됩니다.
- Spread for WinForms V11 | AlignHorz
- Spread for WinForms V11 | AlignVert
아쉽게도 도형을 셀 가운데 정렬하기 위한 속성은 별도로 지원하고 있지 않습니다.
AddShape 메서드로 도형 추가 시 x, y offset 값을 지정하여 도형이 셀 가운데에 위치할 수 있도록 설정해주시기 바랍니다.
혹은 ImageCellType을 사용하시는 것도 하나의 방법이 될 수 있을 것 같습니다.
1. 원하는 색상의 원 이미지를 준비합니다.
2. 셀 타입을 ImageCellType으로 설정합니다.
3. 셀의 Value 속성 값으로 이미지 객체(Image object)를 할당합니다.
아래의 샘플 코드를 참고 부탁드립니다.
// 이미지 파일을 불러옵니다. Image ellipseRed = Image.FromFile("C:\\Red.png"); //빨간색 원 이미지 파일 Image ellipseGreen = Image.FromFile("C:\\Green.png"); //초록색 원 이미지 파일 // A, B 열의 셀 타입을 이미지 셀 타입으로 설정합니다. FarPoint.Win.Spread.CellType.ImageCellType imageCell = new FarPoint.Win.Spread.CellType.ImageCellType(); imageCell.Style = FarPoint.Win.RenderStyle.Normal; fpSpread1.ActiveSheet.Columns[0, 1].CellType = imageCell; // A, B 열에 포함된 셀의 수직/수평 정렬을 설정합니다. fpSpread1.ActiveSheet.Columns[0, 1].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; fpSpread1.ActiveSheet.Columns[0, 1].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; // 셀의 Value 속성 값으로 이미지를 할당합니다. fpSpread1.ActiveSheet.Cells[0, 0].Value = ellipseGreen; fpSpread1.ActiveSheet.Cells[0, 1].Value = ellipseRed;
- Spread for WinForms V11 | 이미지 셀 설정하기
- Spread for WinForms V11 | HorizontalAlignment 속성
- Spread for WinForms V11 | VerticalAlignment 속성
감사합니다.
그레이프시티 드림
등록된 댓글이 없습니다.