информационная безопасность
без паники и всерьез
 подробно о проекте
Сетевые кракеры и правда о деле ЛевинаПортрет посетителяСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Хакеры опять разморозили холодильники... 
 C3RB3R шифрует NAS Synology через... 
 Chainalysis раскрыла взлом собственных... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
и еще 31.05.01 18:54  Число просмотров: 1023
Автор: kabanchik Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> CListBoxView::CListBoxView()
> : CCtrlView(_T("LISTBOX"), (LBS_STANDART | WS_CHILD |
> WS_VISIBLE) & (~WS_BORDER))
> {
> }
>
вот тут, пусть WS_BORDER - не будет для тебя догмой, его тоже попробуй.
<programming>
[C++] Как сделать вид типа CListBox? 30.05.01 20:58  
Автор: myrmidon Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Делаю SDI прогу с несколькими видами, разделённые сплиттером
В каждую панель вставляю вид, который описан отдель в классе, так:
splitter.CreateView(0, 0, RUNTIME_CLASS(CView), pContext);
CView сделан от класса CEditView
Хочю сделать так же, но с классом CListBox
Пока ничо не выходит, кто нить знает, как можно это сделать?
[C++] Как сделать вид типа CListBox? 31.05.01 01:30  
Автор: kabanchik Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Делаю SDI прогу с несколькими видами, разделённые
> сплиттером
> В каждую панель вставляю вид, который описан отдель в
> классе, так:
> splitter.CreateView(0, 0, RUNTIME_CLASS(CView), pContext);
> CView сделан от класса CEditView
> Хочю сделать так же, но с классом CListBox
> Пока ничо не выходит, кто нить знает, как можно это
> сделать?

если с помощью MFC, попробуй:
class CListBoxView : public CCtrlView
{
public:
CListBoxView();
}

CListBoxView::CListBoxView()
: CCtrlView("LISTBOX", LBS_STANDARD & (~WS_BORDER)) // убираем бордер если он есть,
// стиль пропиши на усмотрение или потом поменяй
{
}

ну и все остальное пальчиками набери. вроде должно сработать
[C++] Как сделать вид типа CListBox? 31.05.01 17:31  
Автор: myrmidon Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Окно сделалось, но пустое, че то сам листбокс не создаёца
вроде надо его создавать функцией OnCreate(LPCREATESTRUCT lpCreateStruct)
но как?

есть пример с CListCtrl, там он образован от класса CListView
и в вызове OnCreate(LPCREATESTRUCT lpCreateStruct) пишеца так:
if(CListView::OnCreate(lpCreateStruct) == -1)
{
return -1;
}
CListCtrl & lc = GetListCtrl();
lc.InsertColumn(0, "Col 1", LVCFMT_LEFT, 100);

И ещо, весь вид должен быть образован с помощью вот такой муйни - IMPLEMENT_DYNCREATE
что бы потом запихнуть его в окно используя RUNTIME_CLASS
[C++] Как сделать вид типа CListBox? 31.05.01 18:21  
Автор: kabanchik Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Окно сделалось, но пустое, че то сам листбокс не создаёца
> вроде надо его создавать функцией OnCreate(LPCREATESTRUCT
> lpCreateStruct)
> но как?

нееее. это тут не причем.
"поиграй" со стилями. не забудь обязательно добавить WS_CHILD | WS_VISIBLE. а GetListBox(), можешь сделать так.
и на всякий, хотя не играет роли, добавь PreCreateWindow()б и надо еше RuntimeClass:

class CListBoxView : public CCtrlView
{

DECLARE_DYNCREATE(CListBoxView)
public:
CListBoxView();
virtual ~CListBoxView();

public:
const CListBox& GetListBox() const;
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
};

IMPLEMENT_DYNCREATE(CListBoxView, CCtrlView)

CListBoxView::CListBoxView()
: CCtrlView(_T("LISTBOX"), (LBS_STANDART | WS_CHILD | WS_VISIBLE) & (~WS_BORDER))
{
}

CListBoxView::~CListBoxView()
{
}

const CListBox& CListBoxView::GetListBox() const
{
return *((CListBox *) this);
}

BOOL CListBoxView::PreCreateWindow(CREATESTRUCT& cs)
{
return CCtrlView::PreCreateWindow(cs);
}

короче, если что не получится, меняй стили в конструкторе
и еще 31.05.01 18:54  
Автор: kabanchik Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> CListBoxView::CListBoxView()
> : CCtrlView(_T("LISTBOX"), (LBS_STANDART | WS_CHILD |
> WS_VISIBLE) & (~WS_BORDER))
> {
> }
>
вот тут, пусть WS_BORDER - не будет для тебя догмой, его тоже попробуй.
1





Рейтинг@Mail.ru


  Copyright © 2001-2026 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach