2010-03-15 3 views
1

일부 이미지 샘플링을하고 있습니다. 내 질문은 Visual Studio에 '십자형'도구가 있습니까? 하나의 폼에 여러 인스턴스를 갖고 싶다. 주변을 움직여서 그 점들을 샘플링 할 수 있어야한다. 분명히 십자형의 중앙에있는 픽셀의 색을 반환하는 것은 이미 작업을 수행 할 도구이다. 하나 쓰지?십자선 도구가 있습니까? Visual studio 2008

감사, R.

답변

1

내가 더 십자 알고 있지만 다음 절차는 십자를 그리는 두 번 사용할 수 있습니다. 제거하려면 XOR을 사용하여 프로 시저를 되돌릴 수 있도록 다시 그립니다.

ControlPaint.DrawReversibleLine().

+0

질문과 어떻게 관련이 있습니까? –

+0

죄송합니다. 분명하다고 생각했습니다. 그것이 유용하다는 것을 명확히하기 위해 대답을 업데이트했습니다. –

1

당신은 커서를 변경할 수 있습니다 :

private void btnSample_Click(object sender, EventArgs e) { 
     this.Cursor = Cursors.Cross; 
    } 
    protected override void OnMouseDown(MouseEventArgs e) { 
     if (this.Cursor == Cursors.Cross) { 
      this.Cursor = Cursors.Default; 
      // etc... 
     } 
    } 
+1

나는 그가 이미지의 십자형 모양으로 여러 개의 "표식 표식"을 남길 원한다고 생각했습니다. 그러나 나는 틀릴 수도 있습니다. –

+0

아니요, 찰리 당신 말이 맞아요, 나는 포인터를 변경하고 싶지 않아요, 그 자체가 양식에로드 된 이미지에 포인트를 표시하는 데 사용할 수있는 도구가 있는지 궁금 해서요. – flavour404

+0

확실히 Paint 이벤트를 구현하여 그리십시오. 그러나 이동은 매우 비쌉니다. 마우스를 움직이면 이미지를 다시 그려야합니다. 당신은 커서가 붙어 있지 않습니다. 교차점, 자신 만의 커서 편집 도구가 있습니다. –

0

나는 Cursor.cross로 커서를 변경합니다. 그런 다음 PictureBox의 그래픽에 GDI가있는 mousedown-points에 표시기를 페인트하고 해당 위치의 색상을 샘플링 한 다음 작업이 완료되면 PictureBox의 그래픽을 지 웁니다.