Сокращение строк
|
|
Sam726 | Дата: Среда, 28 Апреля 2010, 21:19 | Сообщение # 31 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Да с путями там все нормально. Я компелирую проэкт и запускаю. А оно ни-ни. И в отладчике я чет ничего не пойму. Что он там показывает и ч то он хочет... Вот блин. Главное в список нормально грузит Code For i=1 To 42 file$='<SrcDir>\Data\Holidays.dat' a1$=StrFromFile(file$,i,1) SongListAdd("a1$") Next i А в текст не хочет... Code For i=1 To 42 a1$='Text'+CHAR(i) file$='<SrcDir>\Data\Number.dat' a2$=StrFromFile(file$,i,1) LoadText("a1$","a2$") Next i И при проверке черех сообщения все норм! Ну... Ну я в шоке!!!
Сообщение отредактировал Sam726 - Среда, 28 Апреля 2010, 21:26 |
|
| |
YURIY | Дата: Среда, 28 Апреля 2010, 22:26 | Сообщение # 32 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Sam726) А в текст не хочет... Давай сюда кусок проекта с этим. У меня твой код прекрасно работает. Что-то делаешь не так. Quote (Sam726) И в отладчике я чет ничего не пойму. Что он там показывает и ч то он хочет... Капец... Что же там может быть неясного? Пример. Создал проект, в кнопке написал a=5. Запускаем отладчик, жмём кнопку и видим, что реально переменной a присвоено значение 5: Также в нём показываются значения основных констант. Если ты не понимаешь этого, зачем ты занялся программированием? На простом сложно, что же будет дальше? Я не хочу тебя обидеть, я просто боюсь, что ты тратишь своё время зря! Потому я тебе и советую для второго кода использовать отладчик и ты увидишь, что твоим переменным присваивается откровенная ерунда, после чего делается вывод, где именно ты совершил ошибку. Программирование без отладки - страшенный геморрой, пойми.
Вечная память Андрею Сергееву!
|
|
| |
Sam726 | Дата: Четверг, 29 Апреля 2010, 12:01 | Сообщение # 33 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Да! Я то понимаю чуток что там и к чему. Просто я стараюсь сразу все проверять в отдельном окне и как ты раньше говорил вставлять в сообщение. А в сообщении все норм, ну и я его втулил в основной проэкт, а оно не фурычит. Вообщем я еще все обсмотрю, если не найду, то выложу кусок проэкта.. Добавлено (29 Апрель 2010, 12:01) --------------------------------------------- хм... Знае в чем прикол. Прикол в том что первый этап роботает For i=1 To 42, а второй не хочет For i=43 To 84. Даж не знаю что как и почему...
|
|
| |
YURIY | Дата: Четверг, 29 Апреля 2010, 16:39 | Сообщение # 34 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Телепаты в отпуске
Вечная память Андрею Сергееву!
|
|
| |
Sam726 | Дата: Четверг, 29 Апреля 2010, 21:59 | Сообщение # 35 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Ха! Вот идиот блин. Внимательно ж нужно все оценивать и понимать все действия... Вообщем я понял в чем проблема, но не знаю как её исправить. Значит так. Первая загрузка идет правельно, а вторая не идет потому что мы вместе с номерами строк a2$=StrFromFile(file$,i,1) грузим и номера текстовых обектов a1$='Text'+CHAR(i), а они то у нас остаются неизменными, с 1 по 42. А в другом коде начало идет с 43 и естественно такого объекта нет и оно не фурычит. Есть идеи как бы его...
|
|
| |
YURIY | Дата: Пятница, 30 Апреля 2010, 00:08 | Сообщение # 36 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Sam726) А в другом коде начало идет с 43 и естественно такого объекта нет и оно не фурычит. Наконец-то проснулся! Quote (Sam726) Есть идеи как бы его... Здесь не нужны идеи. Элементарная логика: Quote (Sam726) a1$='Text'+CHAR(i) Это стираем, а заместо пишем: Code j=i+42 a1$='Text'+CHAR(j) Прибавляем к i нужное число, и получаем номер, с которого будут начинаться объекты.
Вечная память Андрею Сергееву!
|
|
| |
Sam726 | Дата: Пятница, 30 Апреля 2010, 22:50 | Сообщение # 37 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Пасиб Вот так получается нужно... Code For i=1 To 42 a1$='Text'+CHAR(i) file$='<SrcDir>\Data\Number.dat' ** А тут постепенно будем увеличивать 42,84,126... Правельно? j=i+0 a2$=StrFromFile(file$,j,1) LoadText("a1$","a2$") Next i Добавлено (30 Апрель 2010, 22:50) --------------------------------------------- Ну писец... Реально полтергейст завелся...
|
|
| |
YURIY | Дата: Суббота, 01 Мая 2010, 00:30 | Сообщение # 38 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Sam726) Ну писец... Реально полтергейст завелся... Ты сделал вообще чётко, как я написал выше... В итоге у тебя вышло: Quote (Sam726) For i=1 To 42 a1$='Text'+CHAR(i) file$='<SrcDir>\Data\Number.dat' ** А тут постепенно будем увеличивать 42,84,126... Правельно? j=i+0 a2$=StrFromFile(file$,j,1) LoadText("a1$","a2$") Next i Ты осознаёшь, что делаешь вообще?
Вечная память Андрею Сергееву!
|
|
| |
Sam726 | Дата: Суббота, 01 Мая 2010, 09:52 | Сообщение # 39 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Не, ну а че... Ты ж писал что к j мы будем добавлять j=i+42 но она получается в a1$='Text'+CHAR(j). Но мне то не нужно менять в тексте, в тексте остается 1-42. А вот в StrFromFile будет менятся номер строчки 1-42, 43-84... Значит там нужно плюсовать или я опять что-то не то смастерил...
Сообщение отредактировал Sam726 - Суббота, 01 Мая 2010, 09:56 |
|
| |
YURIY | Дата: Суббота, 01 Мая 2010, 16:28 | Сообщение # 40 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Sam726) Но мне то не нужно менять в тексте, в тексте остается 1-42. А вот в StrFromFile будет менятся номер строчки 1-42, 43-84... Значит там нужно плюсовать Quote (Sam726) А в другом коде начало идет с 43 и естественно такого объекта нет и оно не фурычит. Блииииин! То с текстовым объектом были проблемы, теперь, оказывается, с чтением нужной строки... Определись конкретно что нужно. Конкретно опиши свою проблему, по пунктам!
Вечная память Андрею Сергееву!
|
|
| |
Sam726 | Дата: Суббота, 01 Мая 2010, 18:07 | Сообщение # 41 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Загрузка строк текста из файла! Первая загрузка - Работает. Code For i=1 To 42 a1$='Text'+CHAR(i) file$='<SrcDir>\Data\Number.dat' a2$=StrFromFile(file$,i,1) LoadText("a1$","a2$") Next i RunScript("Reset") Вторая загрузка - Работает Code For i=1 To 42 a1$='Text'+CHAR(i) file$='<SrcDir>\Data\Number.dat' j=i+42 a2$=StrFromFile(file$,j,1) LoadText("a1$","a2$") Next i RunScript("Reset") Третья и все последующие - НЕТ!!! Code For i=1 To 42 a1$='Text'+CHAR(i) file$='<SrcDir>\Data\Number.dat' j=i+84 a2$=StrFromFile(file$,j,1) LoadText("a1$","a2$") Next i RunScript("Reset") Я наверное все что только мог уже перепробовал, разные методы и способы. Но видно не все или где-то допустился ошибки. Хотя опять таки, в сообщении все четко работает. Code For i=1 To 42 file$='<SrcDir>\Data\Number.dat' bbc$=CHAR(84)+CHAR(i) txt$=StrFromFile(file$,bbc$,1) LoadText("Text[i]","txt$") Next i RunScript("Reset") Это образцы... For i=1 To 42 file$='<SrcDir>\Data\Number.dat' Year$='84' Year=VAL(Year$) Year=Year+i bbc$=CHAR(Year) txt$=StrFromFile(file$,bbc$,1) LoadText("Text[i]","txt$") Next i RunScript("Reset")
|
|
| |
YURIY | Дата: Суббота, 01 Мая 2010, 18:09 | Сообщение # 42 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Sam726) Третья и все последующие - НЕТ!!! Что именно "нет"? Что конкретно "не работает"?
Вечная память Андрею Сергееву!
|
|
| |
Sam726 | Дата: Суббота, 01 Мая 2010, 21:44 | Сообщение # 43 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Все! Работает! Code For i=1 To 42 a1$='Text'+CHAR(i) file$='<SrcDir>\Data\Number.dat' n=i+42 a2$=StrFromFile(file$,n,1) LoadText("a1$","a2$") Nex t i То возможно из-за добавки RunScript("Reset"). Я её убрал и все стало нормально. Хотя я не понимаю. Оно ж не должно мешать, правельно??? Этот масив можно вставлять в ощий скрип, в перемешку с другими командами, не именно отдельно ж, да???
Сообщение отредактировал Sam726 - Суббота, 01 Мая 2010, 21:47 |
|
| |
YURIY | Дата: Суббота, 01 Мая 2010, 23:29 | Сообщение # 44 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Sam726) Хотя я не понимаю. Оно ж не должно мешать, правельно??? Блин, даже не знаю, что сказать. Если в скрипте Reset ты прописал что-то, что конфликтует с твоим основным, то мешать ещё как может. Quote (Sam726) Этот масив можно вставлять в ощий скрип, в перемешку с другими командами, не именно отдельно ж, да??? Покажи мне массив в своём скрипте. Я лично не вижу.
Вечная память Андрею Сергееву!
|
|
| |
Sam726 | Дата: Воскресенье, 02 Мая 2010, 17:22 | Сообщение # 45 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Quote Если в скрипте Reset ты прописал Да нет. Тот скрипт вообще с объектами роботает. Меняет их цвет. Quote Покажи мне массив в своём скрипте. Я лично не вижу. Вот допустим первый командный скрипт: Code SongListReset() LoadText("Text","Текст1") ReplaceImage("Fon","<SrcDir>\Data\01.jpg") For i=1 To 42 file$='<SrcDir>\Data\Data.dat' a1$=StrFromFile(file$,i,1) SongListAdd("a1$") Next i RunScript("Number1") RunScript("Reset") В скрипте Number1 то что мы так бурно тут обсуждали. Ну и я так думаю лучше их не смешивать в один скрипт. Или можно, только переменные сменить??? Пример (чет типа такого): Code SongListReset() LoadText("Text","Текст1") ReplaceImage("Fon","<SrcDir>\Data\01.jpg") For i=1 To 42 file$='<SrcDir>\Data\Data.dat' a1$=StrFromFile(file$,i,1) SongListAdd("a1$") Next i For i=1 To 42 a1$='Text'+CHAR(i) file$='<SrcDir>\Data\Number.dat' n=i+42 a2$=StrFromFile(file$,n,1) L oadText("a1$","a2$") Nex t i RunScript("Reset") Два масива вместе в одном скрипте не будут давать збоем? Вот так вот получается
Сообщение отредактировал Sam726 - Воскресенье, 02 Мая 2010, 17:23 |
|
| |
YURIY | Дата: Воскресенье, 02 Мая 2010, 18:02 | Сообщение # 46 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Sam726) Да нет. Тот скрипт вообще с объектами роботает. Меняет их цвет. Ха, дружочек, значит не только. Как-то же он сбивает работу основного сценария. Quote (YURIY) Покажи мне массив в своём скрипте. Я лично не вижу. Quote (Sam726) Вот допустим первый командный скрипт: Вынужден тебя огорчить, но в приведённых тобой сценариях нет ни одного массива Quote (Sam726) Ну и я так думаю лучше их не смешивать в один скрипт. Или можно, только переменные сменить??? Смешивать можно, если с умом. Если на несколько объектов-скриптов разделишь - ничего не изменится, кроме удобства восприятия работы (если оно необходимо). Зачем переменные новые заводить, если ты меняешь их значения постоянно? Главное, чтобы ничего не конфликтовало и логика работы соблюдалась.
Вечная память Андрею Сергееву!
|
|
| |
Sam726 | Дата: Воскресенье, 02 Мая 2010, 20:41 | Сообщение # 47 |
Поднаторевший
Группа: Проверенные
Сообщений: 141
Репутация: 0
Награды: 0
Статус: Offline
| Я примерно понял. Спасиб
|
|
| |