Subversion Repositories Kolibri OS

Rev

Rev 3090 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1373 IgorA 1
2
3
элемент Edit Box
4
1374 IgorA 5
1373 IgorA 6
7
1374 IgorA 8

На главную ↑

1373 IgorA 9

Оглавление

10

Введение

11

Функции

12
    13
  • edit_box_key
  • 9616 IgorA 14
  • edit_box_key_safe
  • 1373 IgorA 15
  • edit_box_mouse
  • 1619 IgorA 16
  • edit_box_draw
  • 17
  • edit_box_set_text
  • 1373 IgorA 18
  • version_ed
  • 19
    20

    Структура editbox

    21

    Стили элемента

    22
     
    23

    Введение

    24

    Текстовое поле, используется при вводе текстовой/числовой информации.

    1374 IgorA 25

    26

    Рис. 1. Окно программы fasm с 3-мя элементами EditBox

    1373 IgorA 27
     
    28

    Функции

    29
     
    30

    edit_box_key

    9616 IgorA 31

    Эта функция должна вызыватся при вводе информации с клавиатуры. Пример использования:

    32
    mcall SF_GET_KEY
    33
    stdcall dword [edit_box_key], edit1
    34

    где edit1 - структура элемента edit_box; eax - перед вызовом функции должен содержать код нажатой клавиши.

    1373 IgorA 35
     
    9616 IgorA 36

    edit_box_key_safe

    37

    Эта функция должна вызыватся при вводе информации с клавиатуры (в языках программирования высокого уровня). Пример использования:

    38
    mcall SF_GET_KEY
    39
    stdcall [edit_box_key_safe], edit1, eax
    40

    где edit1 - структура элемента edit_box; eax - код нажатой клавиши.

    41
     
    1373 IgorA 42

    edit_box_mouse

    43

    Эта функция должна вызыватся при вводе информации с мыши.

    44
     
    1619 IgorA 45

    edit_box_draw

    46

    Эта функция должна вызыватся при вводе перерисовке элемента.

    47
     
    48

    edit_box_set_text

    49

    Эта функция копирует текст из указателя в текстовое поле. Если текст в указателе окажется длиннее чем допустимый в элементе edit_box, то он запишется не весь. После вызова данной функции необходимо перерисовать окно функцией edit_box_draw, иначе изменения будут сразу не видны. Пример использования:

    9616 IgorA 50
    stdcall [edit_box_set_text], edit1, buf
    1619 IgorA 51
    .........
    52
    buf db '111-222-333',0
    53

    где edit1 - структура элемента edit_box; buf - буфер, в котором содержится устанавливаемый текст.

    54
     
    1373 IgorA 55

    version_ed

    56

    Версия элемента

    57
     
    58

    Структура editbox

    1711 IgorA 59

    Размер структуры editbox указан внутри файла box_lib.mac в параметре ed_struc_size.

    1373 IgorA 60
    struc  edit_box width,left,top,color,shift_color,focus_border_color,\
    61
           blur_border_color,text_color,max,text,mouse_variable,flags,size,pos
    62
    {
    63
    .width dd width
    64
    .left  dd left
    65
    .top   dd top
    66
    .color dd color
    67
    .shift_color dd shift_color
    68
    .focus_border_color dd focus_border_color
    69
    .blur_border_color  dd blur_border_color
    70
    .text_color dd text_color
    71
    .max  dd max
    72
    .text dd text
    73
    .mouse_variable dd mouse_variable
    74
    .flags  dd flags+0
    75
    .size   dd size+0
    76
    .pos    dd pos+0
    77
    .offset dd 0
    78
    .cl_curs_x dd 0
    79
    .cl_curs_y dd 0
    80
    .shift     dd 0
    81
    .shift_old dd 0
    82
    }
    83

    width - ширина элемента.

    1374 IgorA 84

    left - отступ слева (положение по x).

    85

    top - отступ сверху (положение по y).

    86

    color - цвет фона.

    87

    shift_color - цвет выделения при удерживании [Shift] или мышкой.

    88

    focus_border_color - цвет рамки когда поле в фокусе.

    89

    blur_border_color - цвет рамки когда поле не в фокусе.

    90

    text_color - цвет текста.

    1373 IgorA 91
     
    92

    Стили элемента

    93
     
    94

    ed_figure_only

    95

    Разрешается ввод чисел от 0 до 9.

    96

    ed_focus

    97

    Текстовое поле в фокусе.

    3090 IgorA 98

    ed_pass

    99

    Поле для ввода пароля, все введенные символы отображаются звездами.

    1373 IgorA 100
     
    101

    9616 IgorA 102

    Документация обновлялась последний раз 12.01.22.

    1373 IgorA 103
    104