2009-07-15 4 views
4

나는 특정 로그 파일의 내용을 즉석에서 표시하는 소프트웨어 구성 요소를 작성하고 있습니다. 부스트 업 tail -f을 생각해보십시오. 더 큰 GUI의 일부 여야합니다.C# (또는 java)로 로그 뷰어 GUI 구현

GUI 구성 요소가 로그 파일 출력을 표시해야하는 화면 이동 가능한 텍스트 영역을 구현하도록 선택해야하는지 궁금합니다.

세 내 주요 요구 사항은 다음과 같습니다

  1. 검색 - 사용자가 로그 출력의 단어를 찾을 수 있습니다. 검색 을 필터로 구현할 수 없음을 강조하겠습니다. 로그 파일 foo이 포함 된 셀로 건너 뛰고 을 포함하지 않는 이웃을 숨기는없이 필터링으로 이동하고 싶습니다.
  2. 복사 - 쉽게 선을 선택하고 복사 할 수 있어야합니다. (이것이 내가 DataGrid 기반 솔루션을 배제한 이유입니다).
  3. 필터 - 특정 줄을 쉽게 숨길 수 있어야합니다.
  4. 색상 -이 구성 요소가 MVC 패턴을 순종 경우도 좋을 것이다 (필터 기준) 때때로 특정 색상을 사용할 수있는 능력

이 좋을 것입니다.

물론 일반 읽기 전용 텍스트 영역을 모두 구현할 수도 있지만 더 쉬운 것이 있는지 궁금합니다. 유일하게 특이한 기능은 검색 가능한 모든 텍스트 영역이 일반적인 요구 사항처럼 보이기 때문에 필터링하는 것입니다.

Java GUI 솔루션도 허용 될 수 있습니다 (Java 응용 프로그램에도 사용될 수 있음).

은 내가 찾고있는 것과 유사하지만 불행히도 구성 요소로 사용할 수 없습니다. 같은 GUI를 만들기위한

답변

0

ObjectListView (.NET WinForms ListView의 오픈 소스 래퍼) 접두사 검색 및 상자 밖의 복사 (플러스 다른 많은 멋진 것들).

RowFormatter를 사용하면 특정 행 색상을 쉽게 사용할 수 있습니다.

가상 목록 버전을 사용하는 경우 어려움없이 필터링을 구현할 수 있습니다. 필자는 10 만 개 이상의 항목 목록에 필터링을 적용하여 성능을 향상 시켰습니다 (중급 랩톱에서).

전체 텍스트 검색을 구체적으로 구현해야합니다. 검색어 입력에 대한 후크가 있습니다.

이 모든 것은 표시 할 합당한 LogEntry 유형의 모델 객체가 있다고 가정합니다. 일련의 텍스트 줄만있는 경우 사용자가 직접 설정할 수 있습니다.

1

주요 개념 :

  • GlazedLists 그래서 그보다 쉽게, 로그 형식은/XML을 고정하는 경우
  • JTable가 당신의 친구
  • 입니다.

like this을 원하십니까? 그것의 전적으로 오픈 소스가 아니라 자유의 일부 속성을 공유하는 오전.

+0

글레이즈 목록에 검색 기능이 없으며 쉽게 복사하여 붙여 넣을 수 있다고 생각합니다.하지만보기에는 좋습니다. 감사. –

+0

검색은 찾기, 선택 및 해당 줄로 이동하는 것입니다. – akarnokd

0

Eclipse UI 프레임 워크에는 텍스트 검색, 구문 강조 표시 등을 통해 향상시킬 수있는 콘솔이 포함되어 있습니다. 그러나, 당신이 필요로하는 최소한의 RCP 플러그인은 당신의 요구에 너무 많은 것이라고 생각합니다.

그러나 이미 Eclipse 기반 인 경우 좋은 해결책이 될 것입니다.

1

정확한 필터링을 사용하려면 최소한 두포에서 줄을 "열"로 구조화해야한다고 생각합니다. 이 칼럼들을 보여주는 직관적 인 UI가 나에게 맞는 것처럼 보입니다. 착색을 위해 이것은 차이를 가져서는 안됩니다.

여러 행 선택을 사용할 수있게되면 그리드에서 행을 복사하는 것이 쉬워야합니다. ToString 메소드의 "원시"텍스트를 다른 방법보다 훨씬 쉽게 작성해야합니다. 약.

따라서 여러분은 실제로 그리드 접근 방식을 따라야한다고 생각합니다. Xceed, infragistics, 다른 공급 업체 또는 내장 .NET DataGrid 일 경우 다른 질문입니다.

0

그냥 내가있는 간단한 그리드를 건의 할 것 .NET에서 RichTextBox에게/C 번호

+0

당신이 내 요구 사항을 어떻게 달성하는지 명시 해 주시면 기쁩니다. 그리드에서 복사하는 것은 나에게는 사소한 것처럼 보이지 않습니다. –

+0

텍스트 뷰어 구성 요소 일 뿐이므로 텍스트 파일에 무엇을 넣을 지, rtf 형식에 따라 색상을 지정할 수 있는지, 메모장처럼 복사/붙여 넣기를 할 수 있는지, 필요하면 선택 코드에 쉽게 연결할 수 있습니다. 클릭만으로 전체 라인을 선택하거나 필요한 경우 복사 붙여 넣기를 이용할 수 있습니다. – nos

0

를 사용하는 즉시, .NET 또는 Java이 내가 가진 좋은 WPF 스타터 프로젝트, 그것은 강조 않고있다

+0

@noselasd 위의 내용을 참조하십시오. –

1

로그 파일 로딩 및 기본 검색. 과거에는 로그 파일 검색만을위한 전체 텍스트 인덱스를 유지하는 것이 너무 비싸다는 것을 알게되었습니다.

http://code.google.com/p/videobrowser/source/browse/#svn/trunk/LogViewer

내가 완전히 가상이고 당신의 모든 요구 사항을 지원하는 WPF의 목록보기를 사용 로그 메시지를 표시합니다.

+0

1) 전체 텍스트를 검색하는 것도 괜찮습니다. 단지 몇 메가 바이트 정도입니다. 2) 살펴 보겠습니다. 그것은 필터링 및 검색 및 상자 밖으로 복사를 지원합니까? 또는 일부를 구현해야합니까 (즉, 검색 상자에 Ctrl + F를 연결하고 목록에서 검색하고 Ctrl + C를 누르고 복사를 검사합니다) 감사합니다. –