Вверх ↑
Этот топик читают: Гость
Ответов: 17
Рейтинг: 0
#1: 2017-12-05 09:26:35 ЛС | профиль | цитата
Реализовал появляющиеся кнопки при выборе строки в компоненте ListBox, но есть одна проблема. Кнопки появляются один раз и форма с кнопками больше не перемещается. Как сделать их перемещаемыми при выборе другой строки? При этом если выбрать другую строку и сдвинуть главное окно, то кнопки переместятся.

Схема


Add(MainForm,2953706,196,238)
{
Width=184
Height=191
BorderStyle=3
Position=1
Point(Handle)
}
Add(ListBox,15837332,175,70)
{
Width=168
Height=152
Align=5
Font=[MS Sans Serif,10,0,0,1]
Name="form"
Strings=#5:line1|5:line2|5:line3|5:line4|5:line5|5:line6|0:|
Point(Width)
Point(MouseY)
Point(String)
link(onClick,10443100:doWork2,[(225,83)(225,143)(65,143)(65,202)])
}
Add(ChildForm,10327731,301,189)
{
FirstUsage=0
link(onEvent1,3519927:doMessage,[])
link(Data1,15837332:String,[(307,152)(216,152)])
}
BEGIN_SDK
Add(EditMulti,10907509,14,7)
{
EventCount=1
WorkCount=3
DataCount=1
Width=237
Height=130
VOffset=30
link(doWork1,10308009:doShiftLeft,[])
link(doWork2,10308009:doShiftTop,[])
link(doWork3,10308009:doVisible,[])
}
Add(MainForm,10308009,28,9)
{
Width=174
Height=24
Color=8421504
Visible=1
Ctl3D=0
WinStyle=1
Caption=""
BorderStyle=6
TaskBar=1
OffsetShift=0
TransparentManager="transp"
FormFastening="parent.form"
Point(doShiftLeft)
Point(doShiftTop)
Point(doVisible)
}
Add(TransparentManager,13441677,63,37)
{
Name="transp"
TransparentColor=8421504
FormTranspColor=8421504
}
Add(Button,906471,98,9)
{
Left=5
Top=1
Width=20
TabOrder=-1
Caption="L"
link(onClick,3175090:doWork1,[(163,15)])
}
Add(Button,3367558,98,44)
{
Left=30
Top=1
Width=20
TabOrder=-1
Caption="P"
link(onClick,3175090:doWork3,[(163,50)])
}
Add(DoData,16545535,196,37)
{
link(onEventData,10907509:onEvent1,[(240,43)(240,43)])
link(Data,10907509:Data1,[(202,22)(20,22)])
}
Add(HubEx,3175090,159,37)
{
link(onEvent,16545535:doData,[])
}
END_SDK
Add(ChanelToIndex,10443100,77,189)
{
link(onIndex,11888096:doEvent1,[])
}
Add(Hub,11888096,140,189)
{
OutCount=4
link(onEvent1,16488798:doOperation,[])
link(onEvent2,15273293:doOperation,[])
link(onEvent3,10327731:doWork3,[])
link(onEvent4,6409591:doForeground,[(175,216)(175,314)])
}
Add(Math,16488798,196,189)
{
OpType=1
Op2=55
ResultType=0
link(onResult,10327731:doWork1,[])
link(Op1,15837332:Width,[])
}
Add(Math,15273293,238,196)
{
OpType=1
Op2=7
ResultType=0
link(onResult,10327731:doWork2,[])
link(Op1,15837332:MouseY,[(244,156)(209,156)])
}
Add(WinTools,6409591,196,280)
{
Point(doForeground)
link(Handle,2953706:Handle,[])
}
Add(Message,3519927,350,189)
{
}

карма: 0

0
Ответов: 8921
Рейтинг: 823
#2: 2017-12-05 11:43:06 ЛС | профиль | цитата
rav, главное правильно понять по тексту необходимое
схемка


Add(MainForm,11711561,329,63)
{
Width=184
Height=200
BorderStyle=3
Position=1
Point(Handle)
Point(Left)
Point(Top)
Point(onMove)
Point(doHeight)
link(onCreate,920962:doCalc,[(371,83)(371,139)])
link(onMove,10596629:doWork1,[(375,90)(375,62)(207,62)])
}
Add(ListBox,15837332,392,63)
{
Width=168
Height=152
Align=5
Font=[MS Sans Serif,10,0,0,1]
Name="form"
Strings=#5:line1|5:line2|5:line3|5:line4|5:line5|5:line6|5:line7|5:line8|5:line9|6:line10|6:line11|6:line12|6:line13|6:line14|0:|
Point(Width)
Point(MouseY)
Point(String)
Point(Index)
link(onClick,13240540:doEvent1,[(452,76)(452,55)(172,55)(172,188)])
}
Add(ChildForm,10327731,427,182)
{
FirstUsage=0
link(onEvent1,3519927:doMessage,[])
link(Data1,15837332:String,[])
}
BEGIN_SDK
Add(EditMulti,10907509,14,7)
{
EventCount=1
WorkCount=3
DataCount=1
Width=237
Height=165
VOffset=30
link(doWork1,10308009:doLeft,[(39,43)(39,71)])
link(doWork2,10308009:doTop,[(27,50)(27,78)])
link(doWork3,10308009:doVisible,[(21,57)(21,85)])
}
Add(MainForm,10308009,49,23)
{
Width=174
Height=24
Color=8421504
Visible=1
Ctl3D=0
WinStyle=1
Caption=""
BorderStyle=6
TaskBar=1
TransparentManager="transp"
FormFastening="parent.form"
Point(doShiftLeft)
Point(doShiftTop)
Point(doLeft)
Point(doTop)
Point(doVisible)
}
Add(TransparentManager,13441677,147,86)
{
Name="transp"
TransparentColor=8421504
FormTranspColor=8421504
}
Add(Button,906471,98,9)
{
Left=5
Top=1
Width=20
TabOrder=-1
Caption="L"
link(onClick,3175090:doWork1,[(163,15)])
}
Add(Button,3367558,98,44)
{
Left=30
Top=1
Width=20
TabOrder=-1
Caption="P"
link(onClick,3175090:doWork3,[(163,50)])
}
Add(DoData,16545535,196,37)
{
link(onEventData,10907509:onEvent1,[])
link(Data,10907509:Data1,[(202,22)(20,22)])
}
Add(HubEx,3175090,159,37)
{
link(onEvent,16545535:doData,[])
}
END_SDK
Add(Hub,11888096,224,182)
{
OutCount=3
link(onEvent1,16488798:doOperation,[])
link(onEvent2,5930408:doCalc,[])
link(onEvent3,6409591:doForeground,[(249,202)(249,153)])
}
Add(Math,16488798,322,182)
{
OpType=1
Op2=55
ResultType=0
link(onResult,10327731:doWork1,[])
link(Op1,11711561:Left,[(328,159)(342,159)])
}
Add(WinTools,6409591,280,119)
{
Point(doForeground)
link(Handle,11711561:Handle,[(286,110)(335,110)])
}
Add(Message,3519927,476,182)
{
}
Add(DoData,2557340,217,224)
{
Data=Integer(1)
link(onEventData,10327731:doWork3,[(410,230)(410,202)])
}
Add(MathParse,5930408,371,189)
{
MathStr="%1*16 + 25 + %2"
link(onResult,10327731:doWork2,[])
link(X1,15837332:Index,[(377,159)(440,159)])
link(X2,11711561:Top,[(384,173)(349,173)])
}
Add(MathParse,920962,385,133)
{
DataCount=1
MathStr="(%1>9)*(%1*16 + 40) + (%1<=9)*200"
link(onResult,11711561:doHeight,[(424,139)(424,118)(319,118)(319,97)])
link(X1,15837332:Count,[(391,124)(405,124)])
}
Add(Hub,13240540,182,182)
{
link(onEvent1,10596629:doWork2,[])
link(onEvent2,2557340:doData,[(207,195)(207,230)])
}
Add(HubEx,10596629,203,182)
{
link(onEvent,11888096:doEvent1,[])
}

карма: 19

0
Ответов: 16884
Рейтинг: 1239
#3: 2017-12-05 13:39:28 ЛС | профиль | цитата
Леонид,
А Кнопки Где

Редактировалось 1 раз(а), последний 2017-12-05 13:41:51
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 8921
Рейтинг: 823
#4: 2017-12-05 16:13:03 ЛС | профиль | цитата
Tad,
А вот они.jpg
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#5: 2017-12-05 20:13:09 ЛС | профиль | цитата
А у меня кнопок нет. HiAsm с последними обновлениями (2222).
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 2059
Рейтинг: 132
#6: 2017-12-05 21:17:15 ЛС | профиль | цитата
Tad, левый, верхний угол экрана.

Редактировалось 1 раз(а), последний 2017-12-05 21:17:51
карма: 6

0
Ответов: 16884
Рейтинг: 1239
#7: 2017-12-05 22:45:48 ЛС | профиль | цитата
flint2, спасибо !
Увидел.
Ну, и нахрена они мне там ?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 2059
Рейтинг: 132
#8: 2017-12-05 23:00:57 ЛС | профиль | цитата
Для фэн-шуйя. Чего-то, как-то слово неприлично звучит. Почти как Хулио Иглесиас. И с точки зрения дизайна, тоже как-то сомнительно.

Редактировалось 1 раз(а), последний 2017-12-05 23:04:52
карма: 6

0
Ответов: 8921
Рейтинг: 823
#9: 2017-12-06 00:19:25 ЛС | профиль | цитата
Tad, кнопки приклеены слева формы, напротив выбранной строки , почему они у вас ставятся в угол не знаю, может провинились
карма: 19

0
Ответов: 17
Рейтинг: 0
#10: 2017-12-06 03:01:48 ЛС | профиль | цитата
Леонид, В Вашей схеме кнопки появились в левом верхнем углу главной формы.

Опишу по другому.
При выборе мышкой любой строки, кнопки должны появиться над выбранной строкой (у правого края главной формы, но не вылезая за форму). При выборе мышкой другой\следующей строки, кнопки появляются над этой выбранной строкой.

Сейчас при выборе другой\следующей строки кнопки остаются месте, т.е. там где появились первый раз.


Есть особенность, если начать двигать по экрану главную форму, то кнопки изменяют своё положение, устанавливаются над последней выбранной строкой.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#11: 2017-12-06 08:56:45 ЛС | профиль | цитата
Интересно. У трёх в левом верхнем углу экрана.
У автора не так.
Леонид, делитесь секретом.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 8921
Рейтинг: 823
#12: 2017-12-06 10:54:11 ЛС | профиль | цитата
Tad, я ни разочка не обновлялся автоматом, а нужные (новые) "кубики" ставлю ручками поэтому секрета и не знаю
Ну посмотрите схему, считается и управляется только Top и Left прозрачной формы (ну и Height главной формы по числу строк, т. к. не нашёл короткого пути определения ползунка).

--- Добавлено в 2017-12-06 11:12:58

rav, в Math "+" и Op2=125.
КнопкиСправа.jpg

Редактировалось 1 раз(а), последний 2017-12-06 11:12:58
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#13: 2017-12-06 19:36:03 ЛС | профиль | цитата
Леонид,
Кнопки вообще на Рабочем столе

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 8921
Рейтинг: 823
#14: 2017-12-06 20:45:40 ЛС | профиль | цитата
Tad, а вот *.ехе http://forum.hiasm.com/getfile/38262
А вообще-то проверьте реакцию Дочерней формы на программное перемещение, по просьбе трудящихся в главные формы вносились изменения (забыв главный закон механика) Может открыть *.sha в 137 версии
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#15: 2017-12-06 21:13:27 ЛС | профиль | цитата
Результат Вашего .exe
Леонид, а KOL какой. У меня от Galkov-а.
Проверил оба Kol-а. Никакой разницы - Кнопки в левом верхнем углу экрана.
В общем - анекдот.

Редактировалось 4 раз(а), последний 2017-12-06 22:16:16
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)