Dawyd 0 10 сентября, 2007 Опубликовано 10 сентября, 2007 · Жалоба Привет, всем. Тут есть интересная проблемка, как можно программно опрашивать, устанавливать и сбрасывать соответствующие свойства у компонента StringGrid в C++ Builder, конструкции интуитивно понятные типа Grid->Options->goEditing = true; не прокатывают. Подсказали мне такой вариант решения проблемы Grid->Options << goEditing; работает, но как только его выключить, т.е. сбросить не известно как, пока я сделал так: Grid->Options.Clear(); Grid->Options << goFixedVertLine << goFixedHorzLine << goVertLine << goHorzLine << goRangeSelect; работает, но не то сбравываем все в ноль, а потом устанавливаем все которые нужны, при этом я выставляю их как в инспекторе объектов, а работает не совсем как по умолчанию (до манипуляций с опциями). Да и ещё по ходу программы мне поразному надо реагировать на наличие или отсутствия свойства редактируемости таплицы, как его можно прочитать. P.S. Заранее благодарен за любой ответ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dawyd 0 10 сентября, 2007 Опубликовано 10 сентября, 2007 · Жалоба Сам уже нашел как это делается Сбрасывается свойство редактируемости так Grid->Options >> goEditing; а опрашивается так if (Grid->Options.Contains(goEditing)), только помоему в StringGrid глюк есть или я, чёто не докурил. После манипуляций со свойствами становится возможный редактирование фиксированных строк и столбцов при вхождении на них курсора, они дублируются и могут редектироваться, хотя до манипуляций такого не происходит, может кто сталкивался с такой ситуацией как быть? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shasik 0 10 сентября, 2007 Опубликовано 10 сентября, 2007 · Жалоба Сам уже нашел как это делается Сбрасывается свойство редактируемости так Grid->Options >> goEditing; а опрашивается так if (Grid->Options.Contains(goEditing)), только помоему в StringGrid глюк есть или я, чёто не докурил. TStringGrid здесь абсолютно не причем. Разбирайтесь с таким типом как Set (по-русски, точно не помню, а смотреть лень, но по-моему это переводится как множество). У него есть свои методы (добавление,удаление из множества и т.д.), их и юзайте. Просто Set часто встречается в VCL, поэтому разумнее один раз понять его смысл, чем каждый раз хаить очередной нужный компонент. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
evg123 0 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба Сам уже нашел как это делается Сбрасывается свойство редактируемости так Grid->Options >> goEditing; а опрашивается так if (Grid->Options.Contains(goEditing)), только помоему в StringGrid глюк есть или я, чёто не докурил. StringGrid действительно глючный компонент (по крайней мере в BCB6). Один из его глюков - щелкнуть мышкой на стрингридовском скролбаре, а затем гдето в произвольном месте формы начать крутить мышечное колесо. Сразу - глобальный сбой, причем код-гуард не ловит ничего. Доходило до того, что писали свои перехватчики сообщений от Win-ды, которые блокировали эти мышечные месаги, направленные в сторону стрингрида. Но об этом лучше пойти на sql.ru Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nss__ 0 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба Многие глюки, в том числе StringGrid лечит 4 апдейт на билдер. Качнуть можно от сюда h_t_t_p://www.dep.ru/downloads/pub/bcb6_eng_ent_upd4.exe Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Degun 0 10 октября, 2007 Опубликовано 10 октября, 2007 · Жалоба После манипуляций со свойствами становится возможный редактирование фиксированных строк и столбцов при вхождении на них курсора, они дублируются и могут редектироваться, хотя до манипуляций такого не происходит, может кто сталкивался с такой ситуацией как быть? Может быть сбрасываются свойства FixedCols или FixedRows? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться