Градиенты в Vista стиле, и в частности подложка под Toolbar. - VB

Узнай цену своей работы

Формулировка задачи:

Задача простая.
Есть прямоугольник (picturebox, label), не суть.
У него есть свойство background.
Например я хочу сделать ему горизонтальный градиент в стиле Виста (что-й то типа мутно зеленого, в направлении фиолетового).
Ну т.е.
1) как сделать градиент по горизонтали (вертикали)
2) Ну и какие цвета закладывать под Висту(если кто просто знает)
Ну а на прямоуг. например наложить картинку, текст и т.п., Transparent Control Antonary вроде как любезно предоставил. Пример где полезно: окно About.
Задача посложнее:
Подложка под Toolbar: градиент по вертикали, темно синий или мутно зеленый с преломлением посредине.
По идее накопал слово ToolStrip и вот энтот example
http://www.vbforums.com/showthread.php?t=547618
но думается что ToolStrip это vb.net-наворот, и наверняка можно заказать этот стиль Toolbar-у через API, без ручной рисовки т.е.
Хотелось бы каких-то идей-направлений (хотя бы).

Решение задачи: «Градиенты в Vista стиле, и в частности подложка под Toolbar.»

textual
Листинг программы
<font color="blue">Private</font> <font color="blue">Type</font> TLongX1
   l0 <font color="blue">As</font> <font color="blue">Long</font>
<font color="blue">End</font> <font color="blue">Type</font>
<font color="blue">Private</font> <font color="blue">Type</font> TIntX2
   i0 <font color="blue">As</font> <font color="blue">Integer</font>
   i1 <font color="blue">As</font> <font color="blue">Integer</font>
<font color="blue">End</font> <font color="blue">Type</font>
<font color="blue">Public</font> <font color="blue">Function</font> MAKELONG(<font color="blue">ByVal</font> a <font color="blue">As</font> <font color="blue">Integer</font>, <font color="blue">ByVal</font> b <font color="blue">As</font> <font color="blue">Integer</font>) <font color="blue">As</font> <font color="blue">Long</font>
 <font color="blue">Dim</font> ix2 <font color="blue">As</font> TIntX2
 <font color="blue">Dim</font> lx1 <font color="blue">As</font> TLongX1
 ix2.i0 = a
 ix2.i1 = b
 <font color="blue">LSet</font> lx1 = ix2
 MAKELONG = lx1.l0
<font color="blue">End</font> <font color="blue">Function</font>
...
<font color="blue">Public</font> <font color="blue">Function</font> CreateTheToolBar(<font color="blue">ByVal</font> hwndParent <font color="blue">As</font> <font color="blue">Long</font>) <font color="blue">As</font> <font color="blue">Long</font>
...
 g_hwndToolBar = CreateWindowEx(<font color="darkblue"><b>0</b></font>, TOOLBARCLASSNAME, vbNullString, _
                                ToolbarStyle, <font color="darkblue"><b>0</b></font>, <font color="darkblue"><b>0</b></font>, <font color="darkblue"><b>0</b></font>, <font color="darkblue"><b>0</b></font>, hwndParent, <font color="darkblue"><b>0</b></font>, _
                                App.hInstance, <font color="blue">ByVal</font> <font color="darkblue"><b>0</b></font>&)
 SendMessage g_hwndToolBar, TB_SETIMAGELIST, ID_IMAGELIST, _
             <font color="blue">ByVal</font> Form1.ImageList1.hImageList
...
 SendMessage g_hwndToolBar, TB_BUTTONSTRUCTSIZE, LenB(tbButtonsCreate(<font color="darkblue"><b>0</b></font>)), _
             <font color="blue">ByVal</font> <font color="darkblue"><b>0</b></font>&
 SendMessage g_hwndToolBar, TB_SETBUTTONSIZE, <font color="darkblue"><b>0</b></font>, <font color="blue">ByVal</font> MAKELONG(<font color="darkblue"><b>50</b></font>, <font color="darkblue"><b>32</b></font>)
 SendMessage g_hwndToolBar, TB_ADDBUTTONS, _
             UBound(tbButtonsCreate) - LBound(tbButtonsCreate) + <font color="darkblue"><b>1</b></font>, _
             tbButtonsCreate(<font color="darkblue"><b>0</b></font>)
 SendMessage g_hwndToolBar, TB_AUTOSIZE, <font color="darkblue"><b>0</b></font>, <font color="blue">ByVal</font> <font color="darkblue"><b>0</b></font>&
...
<font color="blue">End</font> <font color="blue">Function</font>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.143 из 5