v7: Разбить строку на несколько #723186


#0 by MagicFly
Всем доброго времени суток! :))    Подскажите, пожалуйста, как можно разбить строку на несколько строк.    Задача следующая: вывожу в окно сообщений текстовую переменную, но она не помещается в окно и хотелось бы узнать, как можно перенести ее на другую строку?
#1 by MagicFly
Сейчас я прописываю Сообщить(СокрЛП(Прич))
#2 by Asmody
например, так же, как вводятся тексты запросов, через | или добавлять Символы.ПС
#3 by NS
Прич=сокрлп(Прич);
#4 by lavalit
РазделительСтрок в помощь.... ставь его например каждые 80 символов в твою длинную строку и будет тебе в окне сообщений многострочное чудо)))
#5 by lavalit
соедини с получишь решение
#6 by PR
Если телепат меня не подводит, то никак
#7 by User_Agronom
Да ладно! Если есть конкретная строка, то можно посчитать её длину (даже с учетом того, что ширина символов разная)
#8 by PR
И чо?
#9 by lavalit
не лги царю... можно
#10 by PR
Можно для выведенного в окно сообщений текста настроить автоперенос на другую строку как, например, в блокноте?
#11 by Ёпрст
с помощью вк, да, можно
#12 by palpetrovich
про автоперенос вроде никто ничего не говорил, а это вполне себе работает:
#13 by PR
С помощью ВК можно и спутник в космос запустить.
#14 by PR
Читай внимательно , первые 5 слов
#15 by lavalit
вопрос был "как можно перенести ее на другую строку?" а не про настройки окна сообщений...)))
#16 by PR
И тебе :))
#17 by lavalit
ответ использовать РазделительСтрок
#18 by lavalit
))))))))))))))))
#19 by palpetrovich
читаю как манрту "Если телепат меня не подводит" ...прозрение не приходит ...не всем дано наверное :(
#20 by MagicFly
а что, с помощью РазделительСтрок и вправду можно автоперенос осуществить?
#21 by lavalit
проверь сам  выведи такое Сообщить("Привет+РазделительСтрок+"СноваПривет"); и можешь зрить аккурат две строки с табле сообщений)))
#22 by lavalit
ту главное в нужные места впихнуть этот самый разденитель строк)))
#23 by User_Agronom
Если он знает ширину окна вывода, он сможет её резать.
#24 by lavalit
923) ну конечно можно заморочиться с вычислением размера окна и соответственно этого самого табла... главное, что можно выводить многострочно в принципе своем...
#25 by lavalit
Формексом можно смотретьразмер текущего окошка программы...
#26 by MagicFly
РазделительСтрок действует только  когда ты знаешь в каком месте его ставить
#27 by PR
И чо? Я про автоперенос предположил, а не про перенос текста при выводе после каждого количества символов.
#28 by lavalit
плюс-минус сколько занимает символ н аекране.. делить и получить количество символов с втроке... минус процента 2-3 на свякие там "широкие" буквы типа ш-м-ж-щ и т.д. и все .. останется заняться пиханием управсимвола куда надо))))
#29 by PR
Ну, то есть мой телепат пашет?
#30 by lavalit
а при чем телепат? пашет конечно только изначально ты подумал про автоперенос в табле.. потом кинуло тебя  в настройки табла.. и все... ответ был верным "никак"... то есть если  бы не свернул чуток от курса))) получил бы друго ответ)))
#31 by PR
Я только про автоперенос и говорил и говорю.
#32 by lavalit
но вопрос то был иной)))) не про автоперенос)))) сктати знаешь принцип автопилота? Чем чаще ошибается тем точнее летит)))) ну если совсем верно чем чаще проверяет отклюение от курса и корректирует полет)))))
#33 by lavalit
если только про автоперенос то таки да.. телепат не ошибся. автопереноса там нет . .его надо  прикручиватьсамому))))
#34 by MagicFly
а вот как узнать в каком месте ставить РазделительСтрок?
#35 by PR
Ставь через каждые пять символов, точно все уместится.
#36 by Ёпрст
добрый ты.. делай так,чтоб наверняка: стр = стрЗаменить(стр," ","" ""); сообщить(стр);
#37 by NS
Принято в строке сообщений использовать моноширинный шрифт.
#38 by Злопчинский
Принято вообще писать интерфейсы чтобы от изменения размеров системных шрифтов - все нормально было.. а в натуре - фигняс частенько выходит..
#39 by User_Agronom
Увольняй телепата.
#40 by MagicFly
А вобще у меня есть на форме многострочное поле ввода, в котором записывается текст. Так вот, с этим полем не совсем удобно работать, так как там не все сразу отображается и приходится листать. Как вариант я выбрал выводить этот текст в окно сообщений, но может можно это еще каким то образом решить?
#41 by lavalit
ну решил что ли задачку?
#42 by NS
Так выведи в "Таблицу" по кнопке. И будет тебе автоматический перенос.
#43 by MagicFly
нет, это у меня было изначально
#44 by MagicFly
можно было бы расширить банальным образом поле ввода, но у меня ограничено место на форме, из-за этого такая канитель происходит
#45 by lavalit
в почте лови...
#46 by lavalit
покуролесишь немного и подточишь под себя))
#47 by MagicFly
ок, спс
#48 by lavalit
не за что главное, что бы помогло))
#49 by lavalit
потом отпиши че там и как оно?))))
#50 by MagicFly
Я вставил это в документ к себе, но при переносе он слава обрывает
#51 by MagicFly
Это почти тоже что было в
#52 by MagicFly
я при том. когда в табло выводит))
#53 by lavalit
ну да.. то о чем я писал в
#54 by MagicFly
А давай я тебе скину свою базу, могу даже только md-ник
#55 by MagicFly
и ты посмотришь как это выглядит хотя бы для понимания сути задачи
#56 by lavalit
а вот про слова обрывает... просто не стал морочиться.. ет уже сам думаю справишься... проверяй, если разделитель попадает на слово, то двигай разделитель либо вперед либо назад... до ближайшего пробела... тогда будет красившее
#57 by lavalit
базу не надо .. мд достаточно
#58 by NS
Чем Не устраивает? Три строчки кода.
#59 by MagicFly
что ты подразумеваешь под таблицей?
#60 by NS
В 1С только один объект "Таблица" таб=создатьобъект("Таблица");
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С