Вверх ↑
Пакеты 
HiAsm4
Windows 
Компоненты 
Koнтpoлы - DragText

DragText
Краткое описание
   Предназначен для перетаскивания текста между контролами через механизм OLE
Параметры
  • DragDefaultCursor - Использовать при перетаскивании курсор по-умолчанию
  • Copy - Разрешить режим копирования
  • Move - Разрешить режим перемещения
  • Link - Разрешить режим создания ссылки
  • Методы
  • doDrag - Перетаскивание текста
  • События
  • onResult - Происходит после завершения перетаскивания и содержит в потоке результат операции
  • onDrop - Происходит после сброса и содержит в потоке конечный тип операции
  • onFeedBack - Происходит постоянно при перетаскивании и содержит в потоке текущий тип операции
  • Данные
  • Text - Текст для перетаскивания
  • Примеры
    
    #sha
    Add(MainForm,2953706,56,56)
    {
    Width=398
    MouseCapture=0
    Position=1
    link(onCreate,10427367:doListen,[])
    }
    Add(Edit,10194783,266,42)
    {
    Left=5
    Top=5
    Width=380
    Text="Drag and Drop me to other control by Right Mouse Down"
    Point(onMouseMove)
    link(onMouseMove,15444994:doDrag,[])
    }
    Add(Memo,7378810,161,70)
    {
    Left=5
    Top=30
    Width=380
    Height=235
    Name="DropText"
    }
    Add(MultiElementEx,15444994,322,56)
    {
    @Hint=#10:Catch drag|
    link(onDrag,9025341:doDrag,[(368,62)(368,101)(254,101)(254,118)])
    }
    BEGIN_SDK
    Add(EditMultiEx,10041686,14,21)
    {
    WorkCount=#6:doDrag|7:doReset|
    EventCount=#6:onDrag|0:|
    Width=363
    Height=235
    link(doDrag,10709717:doEvent,[(24,27)(24,111)])
    link(doReset,5262239:doWork2,[(20,34)(20,167)])
    }
    Add(Counter,12567857,182,112)
    {
    link(onNext,9294019:doEvent,[])
    }
    Add(IndexToChanel,10709717,35,105)
    {
    link(onEvent2,12986394:doData,[])
    }
    Add(Hub,5039386,140,161)
    {
    link(onEvent1,12567857:doReset,[(173,167)(173,132)])
    link(onEvent2,3344081:doEnable,[(262,174)(262,146)])
    }
    Add(MouseEvent,5725366,133,28)
    {
    }
    Add(ChangeMon,12986394,91,112)
    {
    link(onData,6239943:doEvent1,[])
    link(Data,8794832:GetData,[])
    }
    Add(Math,3390384,133,70)
    {
    ResultType=0
    link(onResult,8794832:doData,[(184,76)(184,64)(79,64)(79,76)])
    link(Op1,5725366:MouseX,[])
    link(Op2,5725366:MouseY,[])
    }
    Add(EventFromData,8794832,91,70)
    {
    link(onEvent,3390384:doOperation,[])
    }
    Add(Timer,10109046,175,182)
    {
    Enable=1
    AutoStop=1
    link(onTimer,5262239:doWork3,[(215,188)(215,225)(130,225)])
    }
    Add(Hub,6239943,140,112)
    {
    link(onEvent1,12567857:doNext,[])
    link(onEvent2,10109046:doTimer,[(164,125)(164,188)])
    }
    Add(IndexToChanel,9294019,224,112)
    {
    Count=4
    Data=Integer(1)
    link(onEvent4,3344081:doData,[])
    }
    Add(Hub,7034804,322,133)
    {
    link(onEvent1,3344081:doDisable,[(347,139)(347,174)(268,174)(268,153)])
    link(onEvent2,10041686:onDrag,[(356,146)(356,27)])
    }
    Add(HubEx,5262239,126,161)
    {
    link(onEvent,5039386:doEvent1,[])
    }
    Add(MultiElementEx,3344081,280,133)
    {
    @Hint=#4:Gate|
    link(onTrue,7034804:doEvent1,[])
    }
    BEGIN_SDK
    Add(EditMultiEx,10151340,3,3)
    {
    WorkCount=#6:doData|8:doEnable|9:doDisable|
    EventCount=#6:onTrue|
    Width=181
    Height=116
    link(doData,1711681:doEvent,[(49,9)(49,76)])
    link(doEnable,9857344:doOn,[(39,16)(39,41)])
    link(doDisable,9857344:doReset,[(29,23)(29,34)])
    }
    Add(IndexToChanel,1711681,70,70)
    {
    Point(Index)
    link(onEvent2,10151340:onTrue,[(143,83)(143,9)])
    link(Index,9857344:State,[])
    }
    Add(Switch,9857344,70,21)
    {
    DataOn=Integer(1)
    DataOff=Integer(0)
    Point(State)
    Point(doOn)
    }
    END_SDK
    END_SDK
    Add(DragText,9025341,266,112)
    {
    link(onResult,15444994:doReset,[(306,118)(306,69)])
    link(Text,10194783:Text,[])
    }
    Add(DropTextManager,10427367,112,70)
    {
    ControlManager="DropText"
    link(onDrop,7378810:doAdd,[])
    }
    Замечания
       Если перетаскивание текста осуществляется в пределах Вашей программы, то для приёма используйте компонент DropTextManager

    Обновление элемента: [svn]DragText.pas[/svn]
    BB-code статьи для вставки
    Всего комментариев: 0
    (комментарии к статье еще не добавлены)
    Комментарий
    ...