powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / количество строк в текстбоксе
17 сообщений из 42, страница 2 из 2
количество строк в текстбоксе
    #38522514
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_rusimport,

С нормальными словами работало вроде нормально. При указанных выше условиях.

Кстати, у Эплмана ( Дэн Эплман, Win32 API и Visual Basic ) я не нашёл уточнения про изменение ширины ограничивающего прямоугольника при применения функции DrawText с параметром DT_CALCRECT и DT_WORDBREAK . Есть только про высоту. Или я так смотрел...
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522537
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

ну, так или иначе , буду "докручивать" свой вариант, ибо, как я понял ничего другого не остается, в моем варианте хотя бы во всех 19 записях примера считает правильно, но я наткнулся еще на одну комбинацию слов , обработку , которой не знаю, как увязать с уже имеющимся алгоритмом, будет время - разберусь и с этим, спасибо вам за внимание к этому вопросу
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522562
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_rusimport,

Вот этот вариант вроде считает нормально. Протестируй...
Я не знал пр параметр DT_EDITCONTROL
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522604
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

только что увидел твое последнее сообщение, спасибо , что ответил, решил тестануть твой пример на самом сложном случае , и вот результат - последняя (20-я запись) - подсчет не верный , пример твой разобрал "по запчастям" , и вроде придраться не к чему, а считает не правильно, пример приложил (см. последнюю запись в таблице)
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522627
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

вроде заужать надо на один символ, тогда корректно

lngWidth = lngWidth - Abs(.lfHeight)

но еще потестирую, спасибо
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522640
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

блин , "то хвост увязнет, то нос отвалится" , чо то с этим коэффициентом заужения сделать надо, а что - не пойму (та же 20-я - последняя запись - считает не верно)
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522781
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

у меня сложилось уже впечатление после безуспешных моих попыток поправить твой последний пример для последнего случая, приведенного мной выше, что это какой-то логический "тупик" в алгоритме :( , очень хочется надеяться, что я ошибаюсь
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522782
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_rusimport,

Что тут сказать -

Я так понимаю, это проблема GDI и целых чисел. Подробнее смотри у Фень Юаня ( Фень Юань, Программирование графики для Windows ) в главе "Точность шрифтовых метрик".
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522786
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панургguest_rusimport,

Что тут сказать -

Я так понимаю, это проблема GDI и целых чисел. Подробнее смотри у Фень Юаня ( Фень Юань, Программирование графики для Windows ) в главе "Точность шрифтовых метрик".

кабы у меня была ещё эта книга....а на твой взгляд профессионала (каким , уж извини за грубую лесть , я тебя безусловно считаю), что либо поможет для приведенного тобой алгоритма? У этого Юаня есть "лечебное " средство?
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522788
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_rusimport,
guest_rusimportкабы у меня была ещё эта книгаОна есть в этих интернетах

guest_rusimportУ этого Юаня есть "лечебное " средство?Я сильно не смотрел, но возможно у него есть (многообещающе выглядят названия) в главах "Нетривиальный вывод текста". Посмотри, может чего и накопаешь. Только там не VBA(VB6).
guest_rusimportа на твой взгляд профессионалаЯ скорее любитель, но эта деятельность приносит некоторую прибыль...
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38522798
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

Спасибо , книгу уже скачал, главу прочитал, пока ничего утешительного не нашел
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38523532
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

Было время , внимательно перечитал главу "Нетривиальный вывод текста", особо заинтересовал раздел "Аппаратно-независимое форматирование текста", советуют использовать метод KTextFormator::DrawText класса KTextFormator, код класса приведен в этом разделе, но поскольку это не VB (VBA), разобраться с этим мне будет сложновато, буду признателен , если поможешь
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38523757
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

Извини , если напряг тебя ненароком ... Реализовал тупым до безобразия способом, не поверишь :) (Только , если не будет работать , то надо, чтобы в Параметрах акса на вкладке Клавиатура стоял переход в начало поля при входе в поле)
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38523843
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_rusimportИзвини , если напряг тебя ненарокомДа ни чего страшного, я не смотрел пока ещё. По работе много дел, сейчас некогда...

guest_rusimportРеализовал тупым до безобразия способом, не поверишьРаботает, ну и хорошо! Главное что-бы надёжно было.

guest_rusimport(Только , если не будет работать , то надо, чтобы в Параметрах акса на вкладке Клавиатура стоял переход в начало поля при входе в поле)Сделай так и не надо перенастраивать.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
...
Dim rows As Long
Me.Поле0.SetFocus
Me.Поле0.SelStart = 0
rows = 0
pos = Me.Поле0.SelStart
1:
...
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38523857
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПанургСделай так и не надо перенастраивать.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
...
Dim rows As Long
Me.Поле0.SetFocus
Me.Поле0.SelStart = 0
rows = 0
pos = Me.Поле0.SelStart
1:
...



да это я потом сообразил, после того , когда "на радостях" пример выложил, тогда уж и в начало надо добавить

Код: vbnet
1.
IF Len(Me.Поле0) = 0 Then MsgBox "Количество строк - 0" : Exit Sub
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38523923
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_rusimport,

похоже работает и на memo/rtf с разным размером шрифта
...
Рейтинг: 0 / 0
количество строк в текстбоксе
    #38524004
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКАguest_rusimport,

похоже работает и на memo/rtf с разным размером шрифта

так чо б ему не работать - я ж говорю метод "дубовый" (тупой) до безобразия :)
...
Рейтинг: 0 / 0
17 сообщений из 42, страница 2 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / количество строк в текстбоксе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]