Как нарисовать тонкую линию, как TreeView

Я хотел бы иметь возможность рисовать строку файла, используя собственный API Windows (LineTo), подобный тому, который TreeView использует для соединения узлов друг с другом. Но использование RS_DOT для создания кисти (::CreatePen(PS_DOT, 0, RGB(200, 200, 200))) дает линии другого типа. Кто-нибудь знает, как я могу нарисовать такую ​​​​линию?


person Sam    schedule 16.12.2011    source источник


Ответы (1)


Создание настоящего пера с точками

LOGBRUSH LogBrush;
LogBrush.lbColor = c_colorGridLine;
LogBrush.lbStyle = PS_SOLID;
penDotted.CreatePen( PS_COSMETIC | PS_ALTERNATE , 1, &LogBrush, 0, NULL );
person parapura rajkumar    schedule 16.12.2011
comment
Спасибо за помощь, фактический код, который я использовал, был: LOGBRUSH lb = {BS_SOLID, RGB(200, 200, 200), 0}; hPen = ::ExtCreatePen(PS_COSMETIC | PS_ALTERNATE | PS_ENDCAP_SQUARE | PS_JOIN_ROUND, 1, &lb, 0, NULL); - person Sam; 17.12.2011
comment
Да, код, размещенный здесь, предполагает MFC. Его довольно легко перевести на обычный Win32, но это не то. Объясняет, почему его не приняли. @ Сэм, ты должен опубликовать свой ответ в качестве ответа, а затем принять его. Тем не менее, вы можете проголосовать за это, поскольку оно помогло вам найти решение. - person Cody Gray; 17.12.2011