Subversion Repositories Kolibri OS

Rev

Rev 1619 | Rev 3090 | Go to most recent revision | 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
  • 14
  • edit_box_mouse
  • 1619 IgorA 15
  • edit_box_draw
  • 16
  • edit_box_set_text
  • 1373 IgorA 17
  • version_ed
  • 18
    19

    Структура editbox

    20

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

    21
     
    22

    Введение

    23

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

    1374 IgorA 24

    25

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

    1373 IgorA 26
     
    27

    Функции

    28
     
    29

    edit_box_key

    30

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

    31
     
    32

    edit_box_mouse

    33

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

    34
     
    1619 IgorA 35

    edit_box_draw

    36

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

    37
     
    38

    edit_box_set_text

    39

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

    40
    	push dword buf
    41
    	push dword edit1
    42
    	call dword [edit_box_set_text]
    43
    .........
    44
    buf db '111-222-333',0
    45

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

    46
     
    1373 IgorA 47

    version_ed

    48

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

    49
     
    50

    Структура editbox

    1711 IgorA 51

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

    1373 IgorA 52
    struc  edit_box width,left,top,color,shift_color,focus_border_color,\
    53
           blur_border_color,text_color,max,text,mouse_variable,flags,size,pos
    54
    {
    55
    .width dd width
    56
    .left  dd left
    57
    .top   dd top
    58
    .color dd color
    59
    .shift_color dd shift_color
    60
    .focus_border_color dd focus_border_color
    61
    .blur_border_color  dd blur_border_color
    62
    .text_color dd text_color
    63
    .max  dd max
    64
    .text dd text
    65
    .mouse_variable dd mouse_variable
    66
    .flags  dd flags+0
    67
    .size   dd size+0
    68
    .pos    dd pos+0
    69
    .offset dd 0
    70
    .cl_curs_x dd 0
    71
    .cl_curs_y dd 0
    72
    .shift     dd 0
    73
    .shift_old dd 0
    74
    }
    75

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

    1374 IgorA 76

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

    77

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

    78

    color - цвет фона.

    79

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

    80

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

    81

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

    82

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

    1373 IgorA 83
     
    84

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

    85
     
    86

    ed_figure_only

    87

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

    88

    ed_focus

    89

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

    90
     
    91

    1711 IgorA 92

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

    1373 IgorA 93
    94