Memo裡顯示的值如何做比對 |
答題得分者是:ikk
|
seiken
一般會員 ![]() ![]() 發表:9 回覆:29 積分:7 註冊:2008-11-21 發送簡訊給我 |
各位大大好
小弟先前受kk大大扎導逐一的解決問題 現在遇上了困擾 希望各位大大能嚴厲的指導 讓小弟知道自己的思維錯在那 小弟的程式 從圖中掃了一列的像素值 這是Memo裡顯示的值 Y值 :像素值 50:1 51:1 52:1 53:1 54:1 55:1 56:1 57:1 58:1 59:1 60:1 61:1 62:1 63:1 64:1 65:1 66:1 67:1 68:1 69:1 70:1 71:1 72:1 73:1 74:1 75:1 76:1 77:1 78:1 79:1 80:1 81:1 82:1 83:1 84:1 85:1 86:1 87:1 88:1 89:1 90:1 91:1 92:1 93:1 94:1 95:1 96:1 97:1 98:1 99:1 100:1 101:1 102:1 103:1 104:1 105:1 106:1 107:1 108:1 109:1 110:1 111:1 112:1 113:1 114:1 115:1 116:1 117:1 118:1 119:1 120:2 121:1 122:6 123:3 124:8 125:8 126:14 127:22 128:43 129:28 130:149 131:121 132:190 133:181 134:190 135:174 136:175 137:189 138:198 139:212 140:196 141:161 142:123 143:151 144:140 145:124 146:154 147:144 148:138 149:124 150:102 小弟要做比對是為了取像素值的分水嶺 就像126-132的值 小弟要在這忽然從小變大的值做比對 126:14 127:22 128:43 129:28 130:149 131:121 132:190 小弟不知道要怎麼下判斷 只寫了一串長的if for(int i=0;i<151;i ) { AnsiString s = Memo1->Lines->Strings[i]; int n=s.Pos(":"); int n1 = StrToInt(s.SubString(n 1,s.Length()-(n-1))); Bmapbuf1[i]=n1; if(i==0) { Bmapbuf1[i]=n1; } if (Bmapbuf1[(i-1)]<90 && Bmapbuf1[i]>100 && Bmapbuf1[(i 1)]<170 && (Bmapbuf1[(i-2)] Bmapbuf1[(i-1)])<(Bmapbuf1[i] Bmapbuf1[(i 1)]) && Bmapbuf1[(i-1)] Label33->Visible=true; Label33->Caption=Bmapbuf1[i]; } }
------
丫風 |
ikk
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:4 回覆:413 積分:768 註冊:2003-06-30 發送簡訊給我 |
寫if 的確就可以解決..
所以你的if 還是判斷不出來?? 如果還是有問題, 建議你將if 裡面簡化.. 再放到if 檢查, 萬一有錯, 再去trace bCHeck_1為false 或true的情況. [code cpp] bool bCHeck_1; Bmapbuf1[(i-1)]<90 改為 --> bCHeck_1 = Bmapbuf1[(i-1)]<90; if ( bCHeck_1 && bCHeck_2 && ...) { Label33->Visible=true; Label33->Caption=Bmapbuf1[i]; } [/code]
------
FPGA驗證, FPGA開發平台, http://smims.com |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |