Status bar

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Status bar

Сообщение xqz_me » 12.01.2006 (Чт) 20:22

Как отловить щелчок мышью по одному из разделов Status Bar?

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 12.01.2006 (Чт) 21:02

Гораздо проще, чем ты думаешь.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 12.01.2006 (Чт) 21:04

Хороший ответ.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 12.01.2006 (Чт) 21:07

Пробовал ли ты хоть перебрать перечень его процедур обработки событий?
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 12.01.2006 (Чт) 21:12

Было дело :)

Там есть Private Sub StatusBar1_PanelClick(ByVal Panel As MSComctlLib.Panel), но что с ним делать, не понимаю.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 12.01.2006 (Чт) 21:45

А Panel - это что по-твоему?
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 12.01.2006 (Чт) 21:55

Порядковый помер элелента.

Можно пример конкретный?

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 12.01.2006 (Чт) 22:55

:roll:

Код: Выделить всё
Option Explicit

Private Sub Form_Load()
    With StatusBar1.Panels
        .Add 1, "Panel1"
        .Add 2, "Panel2"
    End With
End Sub

Private Sub StatusBar1_PanelClick(ByVal Panel As ComctlLib.Panel)
    Debug.Print Panel.Key
End Sub
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 12.01.2006 (Чт) 23:03

Круто... Тока ошибку выдаёт.

У меня есть 5 разделов в StatusBar. Я хочу, чтобы при щелчке по пятому разделу произошло событие.

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 12.01.2006 (Чт) 23:40

Код: Выделить всё
Private Sub StatusBar1_PanelClick(ByVal Panel As ComctlLib.Panel)
  select case Panel.index
    case 1
    case 2
  .....
   case 5
     'чтой-то сотворить полезное
     

  end select   


End Sub

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 13.01.2006 (Пт) 13:05

xqz_me

А ты идентификаторы пропиши каждой панели и не будет ошибки :)

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 13.01.2006 (Пт) 16:00

Status Bar очень похож по структуре с ToolBar. Если бы ты сначала разобрался с примером VB Application Wizard ты бы не задавал этого вопроса!
:wink:
#define ROFL 0xDDDD


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, SemrushBot и гости: 169

    TopList