Как установить количество полей (строк) в гриде?
Я хочу создать функцию наполнения грида данными. изначально установить количество строк равным нулю и наполнять его функцией m_grid->AppendRows(1,true);
и какое событие использовать которое вызывается только один раз при открытии окна? мне нужно инициализировать грид и другие элементы управления.
Настройка Grid Topic is solved
-
- Super wx Problem Solver
- Posts: 401
- Joined: Wed Sep 21, 2005 8:17 am
- Location: Rostov-on-Don, Southern Russia
Re: Настройка Grid
http://docs.wxwidgets.org/2.8.11/wx_wxgrid.htmlmidisa wrote:Как установить количество полей (строк) в гриде?
Я хочу создать функцию наполнения грида данными. изначально установить количество строк равным нулю и наполнять его функцией m_grid->AppendRows(1,true);
и какое событие использовать которое вызывается только один раз при открытии окна? мне нужно инициализировать грид и другие элементы управления.
Win XP HE SP3, Vista
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
-
- Super wx Problem Solver
- Posts: 401
- Joined: Wed Sep 21, 2005 8:17 am
- Location: Rostov-on-Don, Southern Russia
создаем пустую решетку m_grid1->CreateGrid( 0, 0 );
или полную с 5-ю рядами и 5-ю колонками m_grid1->CreateGrid( 5, 5 );
Но если создали пустую, то потом в коде можно динамически добавить ряды или колонки: AppendRows(5) или AppendCols(5)
или полную с 5-ю рядами и 5-ю колонками m_grid1->CreateGrid( 5, 5 );
Но если создали пустую, то потом в коде можно динамически добавить ряды или колонки: AppendRows(5) или AppendCols(5)
Win XP HE SP3, Vista
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
-
- Super wx Problem Solver
- Posts: 401
- Joined: Wed Sep 21, 2005 8:17 am
- Location: Rostov-on-Don, Southern Russia
Re: Настройка Grid
В конструкторе производного класса от wxFramemidisa wrote:
и какое событие использовать которое вызывается только один раз при открытии окна? мне нужно инициализировать грид и другие элементы управления.
Самый лучший способ это помотреть каталог samples (в одном каталоге с wxWidgets) там примеры приложений и там все расписано подробно.
Last edited by Mojo on Tue Aug 03, 2010 12:21 pm, edited 1 time in total.
Win XP HE SP3, Vista
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
-
- Super wx Problem Solver
- Posts: 401
- Joined: Wed Sep 21, 2005 8:17 am
- Location: Rostov-on-Don, Southern Russia
Re: Настройка Grid
true можно не устанавливать, оно уже установлено по умолчанию.midisa wrote:...... его функцией m_grid->AppendRows(1,true);
......
т.е. можно просто m_grid->AppendRows(1);
Win XP HE SP3, Vista
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
Re: Настройка Grid
как вы собираетесь удалять записи из грида? Например.
Вы открыли один рекордсет, там 10 строк и 10 полей. тут же открываете другой рекордсет там 5 строк и 5 полей.
Вы каждый раз создаете новый грид?
Правильно было бы так:
1. Инициализация (все установили по нулям).
2. Наполнили 10 строк 10 полей.
3. Инициализация (все установили по нулям).
4. Наполнили 5 строк 5 полей.
Этот же механизм должен работать динамически, когда вы например удаляете запись из базы и вам нужно обновить содержимое рекордсета и грида.
ИТОГ: Как программно установить количество строк и полей в гриде?
Вы открыли один рекордсет, там 10 строк и 10 полей. тут же открываете другой рекордсет там 5 строк и 5 полей.
Вы каждый раз создаете новый грид?
Правильно было бы так:
1. Инициализация (все установили по нулям).
2. Наполнили 10 строк 10 полей.
3. Инициализация (все установили по нулям).
4. Наполнили 5 строк 5 полей.
Этот же механизм должен работать динамически, когда вы например удаляете запись из базы и вам нужно обновить содержимое рекордсета и грида.
ИТОГ: Как программно установить количество строк и полей в гриде?
-
- Super wx Problem Solver
- Posts: 401
- Joined: Wed Sep 21, 2005 8:17 am
- Location: Rostov-on-Don, Southern Russia
Правильно, с колонками все так же....midisa wrote:Не знаю. Правильно сделал или не правильно.
В общем буду делать так:
m_grid->DeleteRows(0,m_grid->GetRows(),true);
После удаления и вставки новых рядов и колонок, для пущей надежности можно обновить решетку m_grid->ForceRefresh();
Win XP HE SP3, Vista
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0
Xubuntu 12.04 LTS
wxWidgets-2.9.5
wxWidgets-3.0.0