Проблема с CListCtrl
От: sergeilSL  
Дата: 20.05.04 08:31
Оценка:
Друзья! Подскажите в чём глюк!
При помощи CListCtrl пытаюсь отобразить файл DBF, где в хедере — имена полей DBF. При открытии файлов с небольшим кол-вом полей, всё нормально, но у меня файлы, в которых кол-во полей 361 и более. При формировании CListCtrl задаю каждой колонке ширину 100 пик. При скроллинге до 327 поля показывается всё нормально, а после 327 — начинается глюк — пропадают все видимые заголовки столбцов. После скроллинга назад — снова появляются. Но заголовки начиная с 328 так и не видно.
Re: Проблема с CListCtrl
От: Willi  
Дата: 20.05.04 08:42
Оценка:
Здравствуйте, sergeilSL, Вы писали:

SL>Друзья! Подскажите в чём глюк!

SL>При помощи CListCtrl пытаюсь отобразить файл DBF, где в хедере — имена полей DBF. При открытии файлов с небольшим кол-вом полей, всё нормально, но у меня файлы, в которых кол-во полей 361 и более. При формировании CListCtrl задаю каждой колонке ширину 100 пик. При скроллинге до 327 поля показывается всё нормально, а после 327 — начинается глюк — пропадают все видимые заголовки столбцов. После скроллинга назад — снова появляются. Но заголовки начиная с 328 так и не видно.

Код в студию!
\/\/i||i
Re[2]: Проблема с CListCtrl
От: sergeilSL  
Дата: 20.05.04 08:56
Оценка:
Здравствуйте, Willi, Вы писали:

W>Здравствуйте, sergeilSL, Вы писали:


SL>>Друзья! Подскажите в чём глюк!

SL>>При помощи CListCtrl пытаюсь отобразить файл DBF, где в хедере — имена полей DBF. При открытии файлов с небольшим кол-вом полей, всё нормально, но у меня файлы, в которых кол-во полей 361 и более. При формировании CListCtrl задаю каждой колонке ширину 100 пик. При скроллинге до 327 поля показывается всё нормально, а после 327 — начинается глюк — пропадают все видимые заголовки столбцов. После скроллинга назад — снова появляются. Но заголовки начиная с 328 так и не видно.

W>Код в студию!


Спасибо тебе за такой быстрый отклик.
Старый код к сожалению не сохранился, т.к. я его немного исправил — вначале 32768 делю на количество полей — это и получается ширина колонки. И так оно заработало, но всё таки интересно было бы узнать в чём причина, т.к. некоторые поля содержат Фамилия Имя Отчество, а для этого 100 пиков недостаточно.
Re: Проблема с CListCtrl
От: Аноним  
Дата: 20.05.04 08:58
Оценка:
Здравствуйте, sergeilSL, Вы писали:

SL>Друзья! Подскажите в чём глюк!

SL>При помощи CListCtrl пытаюсь отобразить файл DBF, где в хедере — имена полей DBF. При открытии файлов с небольшим кол-вом полей, всё нормально, но у меня файлы, в которых кол-во полей 361 и более. При формировании CListCtrl задаю каждой колонке ширину 100 пик. При скроллинге до 327 поля показывается всё нормально, а после 327 — начинается глюк — пропадают все видимые заголовки столбцов. После скроллинга назад — снова появляются. Но заголовки начиная с 328 так и не видно.

327 * 100 > 0x7fff. возможно, что это создает проблему для ListCtrl (если для ширины используется short)
Re[2]: Проблема с CListCtrl
От: sergeilSL  
Дата: 20.05.04 09:02
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, sergeilSL, Вы писали:


SL>>Друзья! Подскажите в чём глюк!

SL>>При помощи CListCtrl пытаюсь отобразить файл DBF, где в хедере — имена полей DBF. При открытии файлов с небольшим кол-вом полей, всё нормально, но у меня файлы, в которых кол-во полей 361 и более. При формировании CListCtrl задаю каждой колонке ширину 100 пик. При скроллинге до 327 поля показывается всё нормально, а после 327 — начинается глюк — пропадают все видимые заголовки столбцов. После скроллинга назад — снова появляются. Но заголовки начиная с 328 так и не видно.

А>327 * 100 > 0x7fff. возможно, что это создает проблему для ListCtrl (если для ширины используется short)


Спасибо, это я уже понял, но весь фокус в том, что я ничего стандартного т.е. MFC-шного не меняю, использую CListCtrl как есть и как рекомендовано в MSDN. Может это какой-то M$-ный глюк? Но об этом я нигде и ничего не видел.
Re[3]: Проблема с CListCtrl
От: Willi  
Дата: 20.05.04 09:28
Оценка:
Здравствуйте, sergeilSL, Вы писали:

SL>Спасибо тебе за такой быстрый отклик.

SL>Старый код к сожалению не сохранился, т.к. я его немного исправил — вначале 32768 делю на количество полей — это и получается ширина колонки. И так оно заработало, но всё таки интересно было бы узнать в чём причина, т.к. некоторые поля содержат Фамилия Имя Отчество, а для этого 100 пиков недостаточно.

Скорее всего это действительно глюк самого контрола.
А можно спросить, что это за таблицы у которых столько полей?
Ты думаешь нормальный человек спосбен перварить такое количество информации?
\/\/i||i
Re[4]: Проблема с CListCtrl
От: sergeilSL  
Дата: 20.05.04 09:40
Оценка:
Здравствуйте, Willi, Вы писали:

W>Скорее всего это действительно глюк самого контрола.

W>А можно спросить, что это за таблицы у которых столько полей?
W>Ты думаешь нормальный человек спосбен перварить такое количество информации?

С удовольствием отвечу.
Дело в том, что есть в зарплате такой налог — ЕСН называется. И есть такая прога по учету зарплаты — "АМБа" называется (производства СКБ Контур в Екатеринбурге). Для формирования отчета в налоговую инспекцию, прога сначала формирует табличку с 361 полем (кстати месяц назад было 345, а ещё месяц назад — 341). А поскольку организация многофилиальная — приходится эти таблички со всех филиалов сливать в одну, а уж потом получать печатную форму. Формат табличек в этой проге закрытый, но есть возможность сохранять в DBF, а поскольку есть несколько полей, названия которых начинаются с цифры, FOX или CLIPPER такие файлы игнорирует. Вот и приходится косячить всякий бред.
Re[5]: Проблема с CListCtrl
От: Willi  
Дата: 20.05.04 10:38
Оценка:
Здравствуйте, sergeilSL, Вы писали:

SL>С удовольствием отвечу.

SL>Дело в том, что есть в зарплате такой налог — ЕСН называется. И есть такая прога по учету зарплаты — "АМБа" называется (производства СКБ Контур в Екатеринбурге). Для формирования отчета в налоговую инспекцию, прога сначала формирует табличку с 361 полем (кстати месяц назад было 345, а ещё месяц назад — 341). А поскольку организация многофилиальная — приходится эти таблички со всех филиалов сливать в одну, а уж потом получать печатную форму. Формат табличек в этой проге закрытый, но есть возможность сохранять в DBF, а поскольку есть несколько полей, названия которых начинаются с цифры, FOX или CLIPPER такие файлы игнорирует. Вот и приходится косячить всякий бред.

Мда. Сочувствую.
\/\/i||i
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.