Элемент управления редактированием в стиле Combobox в winAPI

В моем проекте winAPI, выполненном на C++ (без MFC, без .net...), я создаю поля со списком вместо элементов управления редактированием из-за красивой синей рамки. Во многих оконных формах и диалогах элементы управления редактированием также имеют такой вид. Есть две проблемы:

  1. Это не похоже на "правильный" способ заставить элемент управления редактирования выглядеть таким образом.
  2. Что, если бы я хотел многострочное поле редактирования с таким внешним видом.

Итак, как я могу сделать поле редактирования с видом поля со списком (его часть редактирования, а не часть списка).


person Alexander Rafferty    schedule 10.09.2010    source источник


Ответы (2)


Я думаю, вы ищете расширенные стили окон; в частности, WS_EX_CLIENTEDGE Определяет трехмерный вид.

Если вы используете редактор ресурсов (диалогов), вероятно, в свойствах элемента управления есть флаг. Если вы кодируете напрямую, это параметр в CreateWindowEx.

person Elemental    schedule 10.09.2010

Не уверен, что понимаю ваш вопрос, но если вы используете простое поле со списком (установите стиль CS_SIMPLE), то вы получите поле, которое может отображать несколько значений в нескольких строках без раскрывающегося списка, а также позволяет редактировать текущее выбранное значение. По крайней мере, так я понял на этой странице: http://msdn.microsoft.com/en-us/library/bb775796%28VS.85%29.aspx

person gablin    schedule 10.09.2010
comment
Мне нужно поле EDIT, которое ВЫГЛЯДИТ как часть редактирования поля со списком. - person Alexander Rafferty; 10.09.2010
comment
Я думал, что они выглядят одинаково. Чем они отличаются? - person gablin; 10.09.2010