Вверх ↑
Этот топик читают: Гость
Гость
Ответов: 17029
Рейтинг: 0
#91: 2009-04-14 23:17:08 правка | ЛС | профиль | цитата


Редактировалось 2 раз(а), последний 2021-05-22 09:31:32
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#92: 2009-04-14 23:37:36 ЛС | профиль | цитата
Выше это я.
А вот так виднее.
code_12776.txt
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_12776.txt [1.3KB] [243]
Ответов: 409
Рейтинг: 17
#93: 2009-04-15 19:24:21 ЛС | профиль | цитата
Андрей. писал(а):
code_12772.txt..

Спасибо - очень наглядно, как раз то, что нужно!

Tad писал(а):
Значит сделал не все.

Вопрос снимается. В своей схеме я перешол на StringTableMT - а там эта точка DoEnsureVisible - неработает
Только сделал разноцветные строки таблицы.... а тут бац, и глючный элемент Теперь надо выбирать между красивой навигацией и последней строкой ввода

Вопросы:
1. До сих пор непойму, как можно передать просто значение какому либо элементу? Например есть кнопка и элемент, по нажатию кнопки происходит действие в элементе, мне нужно вместе с этим действием передать некое значение элементу, например цифру, но не кнопкой (т.к. она уже содержит например SQL запрос).
2. Как по простому взять значение из красного потока и передать в синий или наоборот.
карма: 0

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#94: 2009-04-15 19:33:59 ЛС | профиль | цитата
Pirr писал(а):
а там эта точка DoEnsureVisible - неработает

Да ладно, не могет такого быть.
Pirr писал(а):
а тут бац, и глючный элемент

А вот это я бы постеснялся говорить -- если не работает у тебя, это совершенно не значит, что не работает у других. Этот компонент очень сильно оттестирован. А с вашей стороны, уважаемый, я тут ничего похожего на пример из нескольких компонентов с "глючностью" не вижу, один только пустой базар, не постесняюсь так сказать.
карма: 22

0
Ответов: 5446
Рейтинг: 323
#95: 2009-04-15 19:39:17 ЛС | профиль | цитата
Pirr писал(а):

Вопросы:
1. До сих пор непойму, как можно передать просто значение какому либо элементу? Например есть кнопка и элемент, по нажатию кнопки происходит действие в элементе, мне нужно вместе с этим действием передать некое значение элементу, например цифру, но не кнопкой (т.к. она уже содержит например SQL запрос).
2. Как по простому взять значение из красного потока и передать в синий или наоборот.


читай тут до просветления.
карма: 1

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#96: 2009-04-15 19:44:39 ЛС | профиль | цитата
Pirr, возвращаюсь к "глючному" компоненту StringTableMT, чтобы раз и навсегда развеять твои сомнения

Вот пример, аж с двумя, способами doEnsureVisible


Add(MainForm,2953706,168,196)
{
Width=760
}
Add(StringTableMT,10761883,385,238)
{
Left=10
Top=10
Width=365
Height=210
Columns=#8:Tab1=100|8:Tab2=100|8:Tab3=100|
IconsCheck=[]
MiscIcons=[]
Icons=[]
Point(EndIdx)
Point(doSelEndStr)
}
Add(Button,3206215,168,238)
{
Left=350
Top=240
Caption="Add"
link(onClick,6584651:doEvent1,[])
}
Add(For,5624886,252,238)
{
End=50
link(onEvent,11602711:doString,[])
link(onStop,10761883:doSelEndStr,[(301,251)(301,279)])
}
Add(FormatStr,11602711,308,238)
{
Mask="%1; проверка; заполнения"
link(onFString,10761883:doAdd,[])
}
Add(StringTableMT,6478916,385,308)
{
Left=380
Top=10
Width=365
Height=210
Columns=#8:Tab1=100|8:Tab2=100|8:Tab3=100|
AutoMakeVisible=1
IconsCheck=[]
MiscIcons=[]
Icons=[]
Point(EndIdx)
Point(doEnsureVisible)
}
Add(FormatStr,5082220,308,308)
{
Mask="%1; проверка; заполнения"
link(onFString,6478916:doAdd,[])
}
Add(For,12612120,252,308)
{
End=50
link(onEvent,5082220:doString,[])
link(onStop,12044011:doData,[(296,321)(296,377)])
}
Add(DoData,12044011,308,371)
{
link(onEventData,6478916:doEnsureVisible,[(362,377)(362,349)])
link(Data,6478916:EndIdx,[(314,362)(405,362)])
}
Add(Hub,6584651,217,238)
{
link(onEvent1,5624886:doFor,[])
link(onEvent2,12612120:doFor,[(241,251)(241,314)])
}


И на будущее -- если не знаешь, то лучше спроси...

Так что я жду публичных извинений, тк как я автор этого компонента во всех его редакциях...
карма: 22

0
Ответов: 409
Рейтинг: 17
#97: 2009-04-15 20:01:27 ЛС | профиль | цитата
nesco писал(а):
А вот это я бы постеснялся говорить -- если не работает у тебя, это совершенно не значит, что не работает у других. Этот компонент очень сильно оттестирован. А с вашей стороны, уважаемый, я тут ничего похожего на пример из нескольких компонентов с "глючностью" не вижу, один только пустой базар, не постесняюсь так сказать.

Извените если обидел. Невижу ничего страшного в слове "глючный" - в жизни всякое бывает, а в программировании так и тем более.
О программе HIASM - я очень хорошего мнения, очень стабильный продукт. Практически это первый элемент который у меня не заработал.
Вот пример:
code_12791.txt
------------ Дoбавленo в 20.12:
nesco писал(а):
И на будущее -- если не знаешь, то лучше спроси...

Так я и спрашиваю.
Мне Tad 4 схемы показал и у него все работают с элементом StringTable.
Я сперва по элементам копировал его схемы - неработает, потом полностью подключил его схему и направил на неё свои запросы - все заработало. С элементом StringTableMT - неработает.
Допускаю что Вы сидите на SVN версии а я на 174 билде, поэтому у меня этот элемент и неработает.
------------ Дoбавленo в 20.21:
iarspider писал(а):
читай тут до просветления.

Да паравозы и машины - это класс!
карма: 0

0
файлы: 1code_12791.txt [1.3KB] [246]
Разработчик
Ответов: 26151
Рейтинг: 2127
#98: 2009-04-15 21:07:45 ЛС | профиль | цитата
Pirr писал(а):
Вот пример

Я тебе примеры зачем привел, для понта, что ли

Вот так работает твой пример.


Add(MainForm,1952000,238,168)
{
Width=304
Height=473
}
Add(StringTable,5311714,588,210)
{
Left=10
Top=10
Width=275
Height=190
Color=65535
Font=[Arial,8,0,0,204]
Columns=#1:1|1:2|1:3|
Grid=0
Redaction=1
Point(doEnsureVisible)
}
Add(Button,14995128,238,210)
{
Left=10
Top=215
Data=String(;asdasdasd;zxczxczxczxc)
link(onClick,11013344:doStrCat,[])
}
Add(StrCat,11013344,294,210)
{
link(onStrCat,7136712:doEvent1,[])
link(Str1,5839713:Var3,[(300,198)(398,198)])
}
Add(Hub,7136712,343,210)
{
OutCount=4
link(onEvent1,5311714:doAdd,[])
link(onEvent2,8169809:doOperation,[(375,223)(375,251)])
link(onEvent3,2337457:doText,[(367,230)(367,328)])
link(onEvent4,2810862:doAdd,[(465,237)(465,153)])
}
Add(Math,8169809,392,245)
{
OpType=1
Op2=1
ResultType=0
link(onResult,12048744:doEvent1,[])
link(Op1,5839713:Var2,[])
}
Add(GetDataEx,5839713,385,224)
{
Angle=1
link(Data,2810862:Count,[(573,233)])
}
Add(Label,2337457,378,322)
{
Left=230
Top=220
link(Text,5839713:Var1,[(384,233)])
}
Add(StringTableMT,2810862,567,147)
{
Left=10
Top=240
Width=275
Height=190
Columns=#1:1|1:2|1:3|
AutoMakeVisible=1
IconsCheck=[]
MiscIcons=[]
Icons=[]
Point(doEnsureVisible)
}
Add(Hub,12048744,476,245)
{
link(onEvent1,5311714:doEnsureVisible,[])
link(onEvent2,2810862:doEnsureVisible,[(539,258)(539,188)])
}

Pirr писал(а):
Я сперва по элементам копировал его схемы - неработает


Ты что, китаец, что ли Это они пытаются скопировать одно в другое, и это у них, благополучно, не получается нормально. Так у них с нашим двигателем для самолетов получилось, и что, у наших ресурс несколько тысяч часов, а у них несколько десятков часов, но они не орут на весь мир, что наши двигатели "глючные"

Pirr писал(а):
С элементом StringTableMT - неработает


С этим компонентом, не то что не может не работать, так он еще и специально заточен для работы с базами данных с минимальными обвязками. Ты штатные примеры смотрел, наверное -- нет, так вот, самое то их посмотреть. Он (StringTableMT), в основных аспектах, не меняется уже давно.
карма: 22

0
Ответов: 409
Рейтинг: 17
#99: 2009-04-15 21:28:58 ЛС | профиль | цитата
nesco писал(а):
Я тебе примеры зачем привел, для понта, что ли

Свой пример я выложил до твоего второго поста.

В общем беру свои слова про "глючный элемент" назад и приношу свои искинние извинения.
Назначение пункта AutoMakeVisible - из описания для меня было непонятно.
карма: 0

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#100: 2009-04-15 21:50:08 ЛС | профиль | цитата
Pirr писал(а):
Назначение пункта AutoMakeVisible - из описания для меня было непонятно

Вау! И чего же там непонятного (вроде, по-русски писал)

@AutoMakeVisible=True - автоматически делать видимой выбранную строку, False - выбраная строка может быть невидимой|14|0|True,False


Ну перевод-то один в один, как название точки


карма: 22

0
Ответов: 409
Рейтинг: 17
#101: 2009-04-15 22:10:10 ЛС | профиль | цитата
nesco писал(а):
автоматически делать видимой выбранную строку

Как можно делать строку видимой если её надо выбрать? чтобы выбрать её надо увидеть и наоборот как выбранная строка может быть невидимой??? если я её выбиру. Логика у меня такая
В моем понимании "выбранная строка" - это строка по которой я щелкнул мышкой и выделил её.
карма: 0

0
Ответов: 3851
Рейтинг: 159
#102: 2009-04-15 22:13:21 ЛС | профиль | цитата
Pirr писал(а):
если я её выбиру

в этом и есть логика - кто есть ты - прога или юзер с мышой наперевес..
карма: 0
начавший
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#103: 2009-04-15 22:15:22 ЛС | профиль | цитата
Pirr писал(а):
чтобы выбрать её надо увидеть и наоборот как выбранная строка может быть невидимой???

Ааа... Вот оно что. Не забывай, что это связано с интерфейсным взаимодействием, и программно выбранная строка, может быть за пределами окна. Для выбора строки необязательно клацать по строке мышью, достаточно использовать любой подходящий метод Select (что в переводе и есть выбор)
карма: 22

0
Ответов: 409
Рейтинг: 17
#104: 2009-04-15 22:17:29 ЛС | профиль | цитата
Хорошо, что делает пункт AutoMakeVisible=True?
карма: 0

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#105: 2009-04-15 22:30:51 ЛС | профиль | цитата
Pirr писал(а):
Хорошо, что делает пункт AutoMakeVisible=True?

При использовании метода doSelect или doSelEndStr делается автоматически doEnsureVisible к индексу выбранной строки, те, его делать необязательно
------------ Дoбавленo в 22.35:
А вообще-то, метод doEnsureVisible в StringTableMT появился для совместимости со StringTabl-ом, у меня он раньше назывался MakeVisible
карма: 22

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)