powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите разобраться.
8 сообщений из 8, страница 1 из 1
Помогите разобраться.
    #32609489
МаксимВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как понять первую строку - что означает (0U-700U) ? Мне ее нужно перевести на VB.
Код: plaintext
1.
#define TBN_FIRST               (0U-700U)       // toolbar
#define TBN_DROPDOWN            (TBN_FIRST -  10 )
...
Рейтинг: 0 / 0
Помогите разобраться.
    #32609785
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
0U-700U
из безнакового нуля вычли безнаковое 700.

Код: plaintext
TBN_FIRST -  10 
из дефайна TBN_FIRST вычли 10.

А зачем тебе? Просто юзай и не грей голову.
...
Рейтинг: 0 / 0
Помогите разобраться.
    #32611156
МаксимВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это в C++ берешь *.h файл и используешь.
Код: plaintext
#include "commctrl.h"
А в VB я все нужные мне константы из файла "commctrl.h" описываю заново:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
' ************************ Константы для comctl32.dll ************************
' * комманды функции и структура данных InitCommonControlsEx()
Public Type INITCOMMONCONTROLSEXTYPE
  dwSize As Long
  dwICC As Long
End Type
Public Const FORMAT_MESSAGE_FROM_SYSTEM = &H1000

' ====== COMMON CONTROL STYLES (общие стили для элементов управления) ===============================
Public Const WM_USER  As Integer = &H400

Public Const CCS_TOP           As Long = &H1
Public Const CCS_NOMOVEY       As Long = &H2
Public Const CCS_BOTTOM        As Long = &H3
Public Const CCS_NORESIZE      As Long = &H4
Public Const CCS_NOPARENTALIGN As Long = &H8
Public Const CCS_ADJUSTABLE    As Long = &H20
Public Const CCS_NODIVIDER     As Long = &H40
Public Const CCS_VERT          As Long = &H80
Public Const CCS_LEFT          As Long = CCS_VERT Or CCS_TOP
Public Const CCS_RIGHT         As Long = CCS_VERT Or CCS_BOTTOM
Public Const CCS_NOMOVEX       As Long = CCS_VERT Or CCS_NOMOVEY
и т.д..... Может есть другой способ? Если знаете, то подскажите.



CEMb
Код: plaintext
0U-700U
из безнакового нуля вычли безнаковое 700.
Результат: 700 ?
Код: plaintext
TBN_FIRST -  10 
из дефайна TBN_FIRST вычли 10.
Результат: 690 ?
А зачем тебе? Просто юзай и не грей голову.
...
Рейтинг: 0 / 0
Помогите разобраться.
    #32611800
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-700 и -710 соответственно.
...
Рейтинг: 0 / 0
Помогите разобраться.
    #32612118
МаксимВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за ответ.
Только не понятно, зачем использовать беззнаковые числа и что это за такие числа. А, что, нельзя была написатьпроще:
Код: plaintext
#define TBN_FIRST               (0U-700U)       // toolbar
или есть большая разница?
Это как в "Ералаше": "Я понимаю, что две параллельные прямые не пересекются. Но я не понимаю почему?!"
...
Рейтинг: 0 / 0
Помогите разобраться.
    #32612136
МаксимВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то у меня не то в сообщении. Опубликовалось не с первого раза(связь сегодня не важная), и первый вариант до корректировки получился. В предыдущем топике верно будет так:
Код: plaintext
#define TBN_FIRST               -700U       // toolbar
...
Рейтинг: 0 / 0
Помогите разобраться.
    #32612918
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде как нельзя. Иначе преобразуется в другой тип.

-700 она может воспринять, как знаковое целое.
А ей надо:
0хFFFFFD43
(некоторые константы идут в обратную сторону)
Не знаю, почему они именно так написали.
Скорее всего из-за того, что в разных системах на UINT может быть выделено разное число байт и
0U-700U
будет всегда одним и тем же, когда как
0хFFFFFD43
может быть разным

авторчто это за такие числа.
Это числа больше либо равные нулю.

Короче говоря, от того, как ты представишь число компилятору, будет зависить, что это у тебя такое получится.
...
Рейтинг: 0 / 0
Помогите разобраться.
    #32619982
МаксимВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите разобраться.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]