|
int StartPos;
AnsiString S;
int startpos;
if (FSelPos == 0) {
FindDlg->Options = FindDlg->Options-[frFindNext];
if(FindDlg->Options.Contains(frFindNext)) {
StartPos = FSelPos + FindDlg->FindText.Length();
S = MemLog->Lines->Text;
}
else {
S = MemLog->Lines->Text;
StartPos =1;
}
FSelPos = S.Pos(FindDlg->FindText);
if(FSelPos > 0) {
FSelPos = FSelPos + StartPos - 1;
MemLog->SelStart = FSelPos -1;
MemLog->SelLength = FindDlg->FindText.Length();
MemLog->SetFocus();
}
else {
if (FindDlg->Options.Contains(frFindNext)) {
ShowMessage(AnsiString().sprintf("There are no further occurences of %s in LogFile",FindDlg->FindText));
}
else {
ShowMessage(AnsiString().sprintf("Could not find %s in LogFile",FindDlg->FindText));
}
}
}
다시 일케 바꿨거든요.
FindDlg->Options = FindDlg->Options-[frFindNext];
이부분에서 구문에러가 나고 그 이상은 에러가 안나요.
evergreen 님이 쓰신 글 :
: if (FindDlg->Options.Contains( frFindNext ) ) {
: ...
: }
: 로 바꿔 보세요.
:
:
: 공윤경 님이 쓰신 글 :
: : AnsiString S;
: : int startpos;
: : if (FSelPos == 0) {
: : FindDlg->Opations = FindDlg->Options-[frFindNext];
: : if(Options == frFindNext) {
: : StartPos = FSelPos + FindDlg->Text.Length();
: : S = CopyMemory(MemLog->Lines->Text,StartPos, MaxInt);
: : }
: : else {
: : S = MemLog->Lines->Text;
: : StartPos =1;
: : }
: : FSelPos = Pos(FindDlg->FindTExt,S);
: : if(FSelPos > 0) {
: : FSelPos = FSelPos + StartPos - 1;
: : MemLog->SelStart = FSelPos -1;
: : MemLog->SelLength = FindDlg->FindText.Length();
: : MemLog->SetFocus;
: : }
: : else {
: : if (FindDlg->Options==frFindNext) {
: : S := Concat('There are no further occurences of "', FindText,
: : '" in Memo1.')
: : }
: : else {
: : S := Concat('Could not find "', FindText, '" in Memo1.');
: : MessageDlg(S, mtError, [mbOK], 0);
: : }
: : }
: : }
: :
: : 일단 링크된 화일을 보고 고쳐봤습니다. 다른건보다
: :
: : if (FindDlg->Options.Contains==frFindNext) {
: : 옵션확인하는 부분을 어떻게 해야할지 모르겠어요 .저렇게 하면 에러가 나는데... 어떻게 해야하나요?
|