MFC Grid Control 2.25 bug fix & extension
От: Vark  
Дата: 18.12.04 07:41
Оценка: +1
Приветствую коллеги
Я сначала в MFC запостить, но потом подумал, что вроде как исходники ...
В общем когда у меня возникла необходимость в использовании грида в MFC проекте, я выбрал MFC Grid Control c сайта www.codeproject.com,
Но при использовании я нашел и исправил несколько багов, а также добавил функциональность + сделал дополнительный класс СGridCellSpinNumeric.

Я посылал письмо с исходниками автору на своем ломанном английском , но не знаю когда или захочет вообще вносить мои изменения и дополнения в свой контрол ... вот и решил выложить тут ... может кому поможет

здесь
Re: MFC Grid Control 2.25 bug fix & extension
От: Hawk Россия  
Дата: 17.01.05 06:25
Оценка:
Здравствуйте, Vark, Вы писали:

V>Но при использовании я нашел и исправил несколько багов, а также добавил функциональность + сделал дополнительный класс СGridCellSpinNumeric.


А можно подробнее? Какие именно баги исправлены? В свою очередь, я там тоже нашел (и исправил) пару-тройку критических для меня багов, но, за давностью, уже не помню в каких местах. Не хотелось бы при замене на твой вариант делать все по новой... Если твои правки как-то обозначены комментариями, скажи какими...
Re[2]: MFC Grid Control 2.25 bug fix & extension
От: TRAC Россия  
Дата: 20.01.05 10:37
Оценка:
Здравствуйте, Hawk, Вы писали:

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


V>>Но при использовании я нашел и исправил несколько багов, а также добавил функциональность + сделал дополнительный класс СGridCellSpinNumeric.


H>А можно подробнее? Какие именно баги исправлены? В свою очередь, я там тоже нашел (и исправил) пару-тройку критических для меня багов


А можно узнать каких именно?
Re[3]: MFC Grid Control 2.25 bug fix & extension
От: Hawk Россия  
Дата: 26.01.05 23:12
Оценка:
Здравствуйте, TRAC, Вы писали:

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


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


V>>>Но при использовании я нашел и исправил несколько багов, а также добавил функциональность + сделал дополнительный класс СGridCellSpinNumeric.


H>>А можно подробнее? Какие именно баги исправлены? В свою очередь, я там тоже нашел (и исправил) пару-тройку критических для меня багов


TRA>А можно узнать каких именно?


Ну, во-первых, был традиционный глюк с захватом ввода и Alt+Tab. Во-вторых, был какой-то глюк с редактированием ячеек в таблице с выделением по строкам (не по ячейкам). Кажется, при определенных условиях редактирование не работало. Потом, у меня был неприятный эффект запаздывания ячейки при выделении строк (вроде, сначала выделялась строка и, через короткую задержку убирался фокус с ячейки, что несколько раздражало).

Все эти "вроде", "какой-то" и "кажется" написаны неспроста. В гриде ковырялся я давно и многого во всех деталях уже не помню. Сейчас стараюсь его не трогать, т.к. в основном все устраивает (в рамках моей задачи).

Единственное, что раздражает — это то, как работают всплывающие подсказки. Зачастую они не дают нормально отредактировать ячейку (точнее, дают, но для этого надо щелкнуть на подсказке раз пятнадцать), да и выглядят немного коряво. Все порываюсь этим заняться, но никак руки не доходят...

Есть еще заветная мечта — заставить грид (со всеми контролами внутри) поддерживать themes, но это пока нечто из области фантастики...
Re: MFC Grid Control 2.25 bug fix & extension
От: AlikGut  
Дата: 27.01.05 09:44
Оценка:
Здравствуйте, Vark, Вы писали:

V>Приветствую коллеги

V>Я сначала в MFC запостить, но потом подумал, что вроде как исходники ...
V>В общем когда у меня возникла необходимость в использовании грида в MFC проекте, я выбрал MFC Grid Control c сайта www.codeproject.com,
V>Но при использовании я нашел и исправил несколько багов, а также добавил функциональность + сделал дополнительный класс СGridCellSpinNumeric.

V>Я посылал письмо с исходниками автору на своем ломанном английском , но не знаю когда или захочет вообще вносить мои изменения и дополнения в свой контрол ... вот и решил выложить тут ... может кому поможет


V>здесь


контрол хорошо, а в виде View такого готового нет??

AlikGut, #337311300

Running da RSDN@Home v1.1.3; Winamp:Motherboard — Dead SoundBlaster


Будьте проще, и к Вам потянутся тысячи. (С) Монетный двор РФ.

Re[4]: MFC Grid Control 2.25 bug fix & extension
От: Vark  
Дата: 28.02.05 06:49
Оценка:
Сразу извиняюсь за молчание — был сильно занят и не учавствовал в форумах RSDN ...

H>>>А можно подробнее? Какие именно баги исправлены? В свою очередь, я там тоже нашел (и исправил) пару-тройку критических для меня багов


TRA>>А можно узнать каких именно?


можете пройтись по исходникам в поисках комментариев с моей фамилией — Magola

H>Ну, во-первых, был традиционный глюк с захватом ввода и Alt+Tab. Во-вторых, был какой-то глюк с редактированием ячеек в таблице с выделением по строкам (не по ячейкам). Кажется, при определенных условиях редактирование не работало. Потом, у меня был неприятный эффект запаздывания ячейки при выделении строк (вроде, сначала выделялась строка и, через короткую задержку убирался фокус с ячейки, что несколько раздражало).


есть такое, но это я решил не трогать

H>Все эти "вроде", "какой-то" и "кажется" написаны неспроста. В гриде ковырялся я давно и многого во всех деталях уже не помню. Сейчас стараюсь его не трогать, т.к. в основном все устраивает (в рамках моей задачи).


аналогично, но явные баги и нехватку функциональности мне пришлось самому добавить, в частности класс CGridCellSpinNumeric

H>Единственное, что раздражает — это то, как работают всплывающие подсказки. Зачастую они не дают нормально отредактировать ячейку (точнее, дают, но для этого надо щелкнуть на подсказке раз пятнадцать), да и выглядят немного коряво. Все порываюсь этим заняться, но никак руки не доходят...


мне сейчас тоже не до того

H>Есть еще заветная мечта — заставить грид (со всеми контролами внутри) поддерживать themes, но это пока нечто из области фантастики...


хм ... задача интересная, правда я пока вообще themes не занимался — много мороки, а кроме XP/2003 их нигде нету
Re[2]: MFC Grid Control 2.25 bug fix & extension
От: Vark  
Дата: 28.02.05 06:50
Оценка:
Здравствуйте, AlikGut, Вы писали:

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


V>>Приветствую коллеги

V>>Я сначала в MFC запостить, но потом подумал, что вроде как исходники ...
V>>В общем когда у меня возникла необходимость в использовании грида в MFC проекте, я выбрал MFC Grid Control c сайта www.codeproject.com,
V>>Но при использовании я нашел и исправил несколько багов, а также добавил функциональность + сделал дополнительный класс СGridCellSpinNumeric.

V>>Я посылал письмо с исходниками автору на своем ломанном английском , но не знаю когда или захочет вообще вносить мои изменения и дополнения в свой контрол ... вот и решил выложить тут ... может кому поможет


V>>здесь


AG> контрол хорошо, а в виде View такого готового нет??


на том сайте я вроде что-то такое встречал, однако имхо контрол — более универсальное средство, при необходимости его не проблема прикрепить к view
Re[4]: MFC Grid Control 2.25 bug fix & extension
От: vdimas Россия  
Дата: 04.03.05 11:24
Оценка:
Здравствуйте, Hawk, Вы писали:

H>Есть еще заветная мечта — заставить грид (со всеми контролами внутри) поддерживать themes, но это пока нечто из области фантастики...


Странно, вчера я вроде отвечал на этот пост, не вижу своего ответа.

Вот ваша фантастика по этому многострадальному гриду:



В общем, держите весь фрейморк, http://www.rsdn.ru/File/21096/dataGrid.zip там не только грид, но и куча других контролов, общая концепция кое-какая по биндингу полей формы к underlying данным.

Для данного грида разработан источник данных — DataTable. Это in-memory cache данных. В принципе — сделайте методы этого DataTable виртуальными, выделите интерфейсную часть, и там за 1 день можно сделать реализацию для ADO.Recordset или любого другого источника.

В присланном фреймворке есть CDataGrid, которому надо подать DataTable как источник данных, дальше все происходит само. На скрин-шоте одна из формочек.

Там же во врейморке есть куча других интересных конторолов, таких как:
Data Combo Box, с доп. кнопочкой и ресайз-уголочком в выпадающем листе. Содержит ср-ва для автозаполнения и фильтрации своих данных. Очень подходит для случаев, когда нужен выпадающий список ОЧЕНЬ большого размера, ибо заполнение стандартного Combo происходит через сообщения виндов, что очень долго. На нем легко делается контрол как в IE строке адреса или в поле автозаполнения. (но мой ведет себя гораздо "грамотнее", поиграйтесь )

— Удобный под пальчиками CDateTimeEditEx Control. Стандартный виндовый мне однажды надоел своей убогостью в поведении под пальцами и в возможности форматирования даты и времени, и я родил свой с 0-ля (!!!). Потом использовал только его. Позволяет редактировать дату, время, все вместе, есть выпадающий календарик и выпадающий хелпер под время (!!!): (обратите внимание на 2 последние колонки в таблице, это тоже мой "обычный" DateTime Control с произвольным требуемым форматом, тоже рекомендую поиграться )


— TabControl, гораздо более удобный и легковесный, чем CPropertyPages от MS

— Событийная модель в духе С++, посмотрите в классе CDataGrid начиная с 10-й строки определения класса идут Events, очень рекомендую использовать именно такую модель в своей разработке.

---------------
Если кого-то заинтересует использование фреймворка в реальных проектах — буду рад ответить.
Re[5]: MFC Grid Control 2.25 bug fix & extension
От: Alexey Goncharov Россия  
Дата: 09.03.05 15:03
Оценка:
Здравствуйте, vdimas, Вы писали:

H>>Есть еще заветная мечта — заставить грид (со всеми контролами внутри) поддерживать themes, но это пока нечто из области фантастики...


V>Вот ваша фантастика по этому многострадальному гриду:

[...]
V>Если кого-то заинтересует использование фреймворка в реальных проектах — буду рад ответить.

Что-то не удалось мне его собрать:
в архиве нет tsEnums.h и tsDateTime.h
и не понятно, где можно взять tsudfcom.tlb и qmfbStorage.tlb

А так вообще картинки выглядят очень даже привлекательно
Re[6]: MFC Grid Control 2.25 bug fix & extension
От: vdimas Россия  
Дата: 14.03.05 15:37
Оценка:
Здравствуйте, Alexey Goncharov, Вы писали:

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


H>>>Есть еще заветная мечта — заставить грид (со всеми контролами внутри) поддерживать themes, но это пока нечто из области фантастики...


V>>Вот ваша фантастика по этому многострадальному гриду:

AG>[...]
V>>Если кого-то заинтересует использование фреймворка в реальных проектах — буду рад ответить.

AG>Что-то не удалось мне его собрать:

AG>в архиве нет tsEnums.h и tsDateTime.h
AG>и не понятно, где можно взять tsudfcom.tlb и qmfbStorage.tlb

AG>А так вообще картинки выглядят очень даже привлекательно


да, для сборки я его не вычистил...
однако, если кто заинтересован, то можно потратить час-другой на это (а то и меньше).

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

Т.е., строки импорта удаляем, инклюды с указанными отсутствующими файлами тоже.

Если кое-где во вреймворке в методах используются эти сторонние вещи — просто удаляем эти методы, они не общего плана, а весьма прикладного.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.