|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Помогите разобраться с кодом!? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2012, 15:38 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, А как ты хочешь этот код запустить? Там только определение класса ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2012, 16:30 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Jonny540, А какое можно найти ему применение? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2012, 16:33 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, Да миллион вариантов. Включи в код метода формы или в .prg, например. Это пример динамического создания класса ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2012, 16:51 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Jonny540, Можешь на примере показать использование этого кода в .prg. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2012, 17:10 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
В коде несколько ошибок. Хотя, может даный класс был рассчитан на специфическое использование. В приведенном примере сделано следующее 1. Удалены присвоения вида Height = (this.Parent.Height) 2. Вместо названия метода "curentvalue_assing" должно быть "curentvalue_assign". Две последние буквы поменять местами Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2012, 17:52 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
ВладимирМ, Спасибо, получилось то что нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 09:45 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Еще такой момент, может кто подскажет. Есть программа, она считает, отображает, записывает и т.д. И когда она считает, занимает много времени. Для того чтобы пользователь видел что программа еще работает я вставил сообщение: Код: sql 1. 2.
Но оно по словам начальника не информативно и не дает пользователю уверенности что программа еще работает! Я вставил несколько таких сообщений с названиями отображающими этап работы программы, но в место пяти вставленных сообщений отображаются только два. Можно что ни будь сделать, что бы, видеть, что программа еще работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 09:57 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, Так у тебя же пример есть с прогресбар :) вот и воткни его в дополнение к WAIT WIND ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 10:22 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Jonny540, Я так и хотел вот только не знаю как совместить WAIT WIND с DEFINE CLASS. Если не трудно приведи пример. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 10:36 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, Для начала скажи, как ты определяешь форму И что у тебя за фокс? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 11:42 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Jonny540, Visual Fox Pro 9.0 Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 12:18 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, Этот DEFINE CLASS пропиши в INIT() формы, а потом - как написано в примере, но проще, если форма уже сделана заранее, в конструкторе перетащи на нее ActiveX Microsoft ProgressBar и настрой его свойства Min=0, Max=RECC() У тебя там два SCAN...ENDSCAN - вот в обоих и вызывай, Value= порядковый номер записи (не RECNO()) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 12:47 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Jonny540, Да, до и между SELECT тоже можно сделать "псевдопрогрессбар" После первого селект пишешь, например, Value=2, после второго =4 и т.д., после последнего =Max Главное видно, что прога работает :) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 12:53 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Jonny540, Приведенный код прописан в INIT() формы. В начале, открывается другая форма, в которой выбирается интервал времени, затем, открывается форма с приведенным кодом, код прописан в INIT(). в конструкторе перетащи на нее ActiveX Microsoft ProgressBar А какой .ocx нужно выбрать что бы добавить ActiveX Microsoft ProgressBar на панель инструментов? И какой ActiveX Microsoft ProgressBar их там два? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 13:08 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, Tools->Options->Controls->ActiveX Controls, какой ProgressBar выбрать - не вижу особой разницы, ну выбери последний... А тащить, видимо, придется на "другую форму, в которой..." И код из INIT тоже туда же. Если "форма с приведенным кодом" открывается по кнопке, то в клик кнопки, а уже после "загрузки данных", после WAIT CLEAR - DO FORM "форма с приведенным кодом" (только уже без кода в INIT, оставь там только передачу параметров) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 14:03 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
А можно с этого места по подробнее, я совсем запутался. А тащить, видимо, придется на "другую форму, в которой..." И код из INIT тоже туда же. Если "форма с приведенным кодом" открывается по кнопке, то в клик кнопки, а уже после "загрузки данных", после WAIT CLEAR - DO FORM "форма с приведенным кодом" (только уже без кода в INIT, оставь там только передачу параметров) Только я не знаю как из процедуры INIT() передавать эту форму параметры? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 15:16 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, А у тебя неплохо с графикой получается, может, поменять специализацию? :) В форму "выбор интервала" в метод Click() кнопки "выбрать" сначала пишешь код из INIT() формы "значения показателей" (т.е. отбор данных), и там же (в форме "выбор интервала" в методе Click() кнопки) ProgressBar и Wait wind. В форме "значения показателей" не будет никаких ProgressBar и Wait wind, все это - в форме "выбор интервала" в методе Click() В методе Load() формы "значения показателей" - Thisform.MyGrid.RecordSource=<имя_курсора> Ну вот, вроде разжевал, глотай только. А вообще, и свои зубы надо иметь :) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 16:16 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, Кстати, тебя не повесят за публикацию кода? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 16:17 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
А у тебя неплохо с графикой получается, может, поменять специализацию? Да у меня проблем с черчением ни когда не возникало. Раньше хотел быть проектировщиком, разрабатывать чертежи роботов трансформеров :) Ну вот, вроде разжевал, глотай только. А вообще, и свои зубы надо иметь Зубы есть, но когда работа не вызывает интерес, зубы использовать не хочется. Кстати, тебя не повесят за публикацию кода? Это еще что, когда была тема: «доступ к базе данных», вот там я действительно скинул очень много кода! ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 16:42 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_AleksНу вот, вроде разжевал, глотай только. А вообще, и свои зубы надо иметь Зубы есть, но когда работа не вызывает интерес, зубы использовать не хочется. Буду рад, если хоть немного помог ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2012, 17:26 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Jonny540, Если не трудно, разжуй и ProgressBar. Что именно из ProgressBar я должен добавить в форму "выбор интервала" в методе Click() кнопки Выбрать? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 09:18 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, 1. Это все давно уже жевано-пережовано. 2. Ценный совет номер раз из топика Вопрос по VFP 9.0 Dima Tсоветую взять и почитать книжку по фоксу. Любую. 3. Совет номер два - см.файл Успехов! ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 10:24 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Jonny540, Как добавить ProgressBar я знаю, я не знаю как взаимодействуют , форма, в которой выполняется программ и ProgressBar. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 13:05 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, 2. Ценный совет номер раз из топика Вопрос по VFP 9.0 Dima Tсоветую взять и почитать книжку по фоксу. Любую. Это из хэлпа: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 13:37 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Во вложении пример класс progress bar. За основу взят класс Михаила Дунькина по этой ссылке http://www.foxclub.ru/sol/solution20.php с мелкими изменениями Использовать в приложении можно так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
Здесь основная идея в том, что Progress Bar физически размещается в объекте ToolBar, как следствие, не требует отдельной формы и не может получить фокуса. В качестве примера исполльзования здесь выбрано сканирование всех записей некоторой таблицы MyTable. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 15:00 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_AleksЕще такой момент, может кто подскажет. Есть программа, она считает, отображает, записывает и т.д. И когда она считает, занимает много времени. Для того чтобы пользователь видел что программа еще работает я вставил сообщение: Код: sql 1. 2.
Но оно по словам начальника не информативно и не дает пользователю уверенности что программа еще работает! Я вставил несколько таких сообщений с названиями отображающими этап работы программы, но в место пяти вставленных сообщений отображаются только два. Можно что ни будь сделать, что бы, видеть, что программа еще работает? Чем больше строчек в программе тем дольше будет выполняться код. *Ты был на верном пути WAIT 'Обработка'+CHR(13)+PADR[REPLICATE('.',RECNO()/RECCOUNT()*240),240,' '] WINDOW NOWAIT *RECNO() это номер обрабатываемой записи в таблице *Если записей в базе десятки и сотни тысяч тогда нет смысла на каждую запись выводить термометр IF RECNO()%100=0 OR RECNO()=RECCOUNT() WAIT 'Обработка'+CHR(13)+PADR[REPLICATE('.',RECNO()/RECCOUNT()*240),240,' '] WINDOW NOWAIT ENDIF *В данном примере мы двигаем термометр если остаток от деления на 100 равен 0,т.е. на каждую сотую запись двигаем термометр *и на последок выводим термометр когда RECNO()=RECCOUNT() *ПРИМЕЧАНИЕ - сортировка по индексу SET ORDER должна быть выключена для этой таблицы ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 17:08 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
ВладимирМ, Я что-то совсем запутался. Столько разных вариантов и у меня ни чего не получается. Вот сделал (попытался сделать) небольшой пример как оно должно работать, но оно работает ни так. Если у кого еще остались нервы и время, помогите! Нужно немножко подкорректировать формы. Они в архиве в месте с БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 17:11 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_AleksВладимирМ, Я что-то совсем запутался. Столько разных вариантов и у меня ни чего не получается. Вот сделал (попытался сделать) небольшой пример как оно должно работать, но оно работает ни так. Если у кого еще остались нервы и время, помогите! Нужно немножко подкорректировать формы. Они в архиве в месте с БД. Мой вариант самый простой и быстрый, почти как твой. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 17:17 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
проходящий., Вот-вот, я это и хотел написать, ни каких классов, ни каких форм, и ни каких параметров! Скорее всего его буду и использовать. Сейчас попробую. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 17:22 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleksпроходящий., Вот-вот, я это и хотел написать, ни каких классов, ни каких форм, и ни каких параметров! Скорее всего его буду и использовать. Сейчас попробую. Чем больше красоты и наворотов - тем больше тормозов при большом количестве записей. В команде WAIT можешь ещё добавить параметр AT ... чтобы окошко wait выводилось в центре экрана. Ещё маленькое примечание - в команде wait количество знаков-символов для вывода ограничено. Я поставил - 'Обработка',CHR(13) и 240 знаков под термометр. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 17:30 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
проходящий., Даже и не знаю, может я не правильно поставил сообщение но при выполнении программы отображается только: ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 19:08 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleksпроходящий., Даже и не знаю, может я не правильно поставил сообщение но при выполнении программы отображается только: Сколько записей в базе? Этот код надо ведь в теле какого то цикла выполнять? Например SCAN *тут термометр ENDSCAN ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2012, 19:49 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
проходящий., Работает. А что если попробовать рисовать градусник, по количеству строчек кода? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2012, 10:17 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2012, 10:57 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
проходящий., Сделал как ты и говорил. Проставил по коду сообщения: Код: sql 1. 2.
А где код быстро выполняется, небольшую задержку для наглядности. Всем огромное спасибо за помощь! ... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2012, 12:28 |
|
Запустить код на выполнение?!
|
|||
---|---|---|---|
#18+
Aleks_Aleks, Главное принцип ты понял, остальное по вкусу. По поводу интерфейса могу добавить только одно - делай поменьше чёрточек. Чем меньше на экране рамок и чёрточек - тем лучше восприятие текстовой информации. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2012, 17:01 |
|
|
start [/forum/topic.php?all=1&fid=41&tid=1583747]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
67ms |
get tp. blocked users: |
1ms |
others: | 251ms |
total: | 396ms |
0 / 0 |