Как добиться внешнего вида эдита, аналогичному тому, что
делает со стандартной кнопкой свойство BS_FLAT?
Причем, эдит размещен на форме, а не создается
динамически.
ModifyStyle заюзать?
Не совсем то получается. Он должен быть окаймлен темной линией.
Вопрос, конечно, на фоне остальных несколько туповат, но просто
дизайн — дело такое, забывать тоже нельзя
Здравствуйте, kamui, Вы писали:
K>Не совсем то получается. Он должен быть окаймлен темной линией.
Я так понимаю, что желаемый вид Вам должно дать наличие стиля WS_BORDER при отсутствии расширенного стиля WS_EX_CLIENTEDGE. Попробуйте создать такой EDIT при помощи CreateEx() и посмотрите, что получится.
[ posted via RSDN@Home 1.1.4 beta 4 r391, accompanied by silence ]
Не достиг я такого уровня шаманства, чтобы это еще и понять.
Как того же эффекта добиться для CComboBox?
Попробовал так же поиграть свойствами через ModifyStyle — не получается никак.
Здравствуйте, kamui, Вы писали:
K>Не достиг я такого уровня шаманства, чтобы это еще и понять. K>Как того же эффекта добиться для CComboBox? K>Попробовал так же поиграть свойствами через ModifyStyle — не получается никак.
А вот с элементом управления ComboBox есть проблема. ModifyStyle() не поможет. Выход — самостоятельно нарисовать необходимую рамку вокруг окна редактирования и кнопки активации выпадающего списка. Т.е. в методе OnPaint() выполнить процедуру рисования по умолчанию Default(), а потом нарисовать то, что вы хотите.
AP>А вот с элементом управления ComboBox есть проблема. ModifyStyle() не поможет. Выход — самостоятельно нарисовать необходимую рамку вокруг окна редактирования и кнопки активации выпадающего списка. Т.е. в методе OnPaint() выполнить процедуру рисования по умолчанию Default(), а потом нарисовать то, что вы хотите.
А можно клочок кода? Хоть самый маленький... А то ну никак не силен я в рисовании
контролов...
Здравствуйте, kamui, Вы писали:
AP>>А вот с элементом управления ComboBox есть проблема. ModifyStyle() не поможет. Выход — самостоятельно нарисовать необходимую рамку вокруг окна редактирования и кнопки активации выпадающего списка. Т.е. в методе OnPaint() выполнить процедуру рисования по умолчанию Default(), а потом нарисовать то, что вы хотите.
K>А можно клочок кода? Хоть самый маленький... А то ну никак не силен я в рисовании K>контролов...
У меня получилось примерно следующее:
есть класс CFlatArtist — рисует необходимые рамки и т.д. для нескольких элементов управления (ComboBox,Button,....и т.п.), а все остальные классы, реализующие элементы управления, используют последний для собственного отображения.
P.S. Если не понятно спрашивайте. А вообще на эту тему была масса статей с разными реализациями.
За основу брал примерчик c codeproject, к сожалению ссылку не помню.