Вверх ↑
Этот топик читают: Гость
Ответов: 5227
Рейтинг: 587
#1: 2009-01-10 17:34:06 ЛС | профиль | цитата
Не хватает точки удалить текущую страницу.
------------ Дoбавленo:

При этом должна выделятся предыдущая страница, схема для размышлений

#sha
Add(MainForm,2969037,21,98)
{
Left=20
Top=105
Height=369
}
Add(TabControl,8669777,266,105)
{
Left=10
Top=15
Width=370
Height=190
Bitmaps=[]
Point(CurTabIndx)
Point(Index)
Point(PageTab)
Point(onMouseDown)
Point(PageDelete)
link(onChange,11057279:doText,[])
link(Index,9145336:Value,[])
}
Add(Button,15832728,77,98)
{
Left=10
Top=215
Caption="Add"
link(onClick,1550486:doNext,[])
}
Add(Label,11057279,315,105)
{
Left=330
Top=220
}
Add(Counter,1550486,126,98)
{
Default=-1
link(onNext,9374190:doEvent1,[])
}
Add(Hub,9374190,175,98)
{
OutCount=3
link(onEvent1,16147113:doWork2,[(219,104)(219,62)])
link(onEvent2,8669777:PageInsert,[])
link(onEvent3,8669777:PageTab,[])
}
Add(Button,6519007,77,161)
{
Left=10
Top=245
Caption="Del"
link(onClick,1094151:doData,[])
}
Add(DoData,1094151,126,161)
{
link(onEventData,1427666:doEvent1,[])
link(Data,8669777:CurTabIndx,[(132,149)(279,149)])
}
Add(Memory,9145336,273,56)
{
}
Add(Hub,1427666,175,161)
{
link(onEvent1,16147113:doWork3,[(235,167)])
link(onEvent2,8669777:PageDelete,[(246,174)(246,125)])
}
Add(HubEx,16147113,231,49)
{
link(onEvent,9145336:doValue,[])
}
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Разработчик
Ответов: 26135
Рейтинг: 2126
#2: 2009-01-10 18:10:43 ЛС | профиль | цитата
andrestudio писал(а):
При этом должна выделятся предыдущая страница


И в чем проблемема



Add(MainForm,2969037,294,301)
{
Left=20
Top=105
Height=369
}
Add(TabControl,8669777,539,308)
{
Left=10
Top=15
Width=370
Height=190
Bitmaps=[]
Point(CurTabIndx)
Point(Index)
Point(PageTab)
Point(onMouseDown)
Point(PageDelete)
link(onChange,11057279:doText,[])
link(Index,9145336:Value,[])
}
Add(Button,15832728,350,301)
{
Left=10
Top=215
Caption="Add"
link(onClick,1550486:doNext,[])
}
Add(Label,11057279,588,308)
{
Left=330
Top=220
}
Add(Counter,1550486,399,301)
{
Default=-1
link(onNext,9374190:doEvent1,[])
}
Add(Hub,9374190,448,301)
{
OutCount=3
link(onEvent1,16147113:doWork2,[(492,307)(492,265)])
link(onEvent2,8669777:PageInsert,[])
link(onEvent3,7100088:doWork2,[(468,321)])
}
Add(Button,6519007,294,364)
{
Left=10
Top=245
Caption="Del"
link(onClick,5353234:doValue,[])
}
Add(Memory,9145336,546,259)
{
}
Add(Hub,1427666,399,364)
{
OutCount=3
link(onEvent1,16147113:doWork3,[(508,370)])
link(onEvent2,8669777:PageDelete,[(519,377)(519,328)])
link(onEvent3,3485056:doOperation,[(426,384)(426,434)(438,434)])
}
Add(HubEx,16147113,504,252)
{
link(onEvent,9145336:doValue,[])
}
Add(Memory,5353234,350,364)
{
Point(Data)
link(onData,1427666:doEvent1,[])
link(Data,8669777:CurTabIndx,[(356,357)(552,357)(552,347)])
}
Add(Math,3485056,448,427)
{
OpType=1
Op2=1
ResultType=0
link(onResult,7100088:doWork3,[(486,432)(486,432)(515,432)])
link(Op1,5353234:Value,[(453,420)(359,420)(359,407)])
}
Add(HubEx,7100088,511,308)
{
link(onEvent,8669777:PageTab,[(526,321)])
}

карма: 22

0
Ответов: 485
Рейтинг: 86
#3: 2009-01-10 18:17:41 ЛС | профиль | цитата
чуть подправил (если удаляется первая страница, то выделяется следовавшая за ней)
code_11313.txt
карма: 0

0
файлы: 1code_11313.txt [1.5KB] [613]
Разработчик
Ответов: 26135
Рейтинг: 2126
#4: 2009-01-10 18:21:17 ЛС | профиль | цитата
filyaxxxcom писал(а):
чуть подправил (если удаляется первая страница, то выделяется следовавшая за ней)

В моей схеме прекрасно после удаления первой выбирается нулевая, а при удалении нулевой не выбирается ничего, что правильно, тк индекс "-1" не выбирать ничего и означает.

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

0
Ответов: 485
Рейтинг: 86
#5: 2009-01-10 18:28:05 ЛС | профиль | цитата
nesco, ничего не путаешь? Там же при удалении страницы с индексом=0 на PageTab -1 попадает. И никакая страница не выделяется...
карма: 0

0
Разработчик
Ответов: 26135
Рейтинг: 2126
#6: 2009-01-10 18:31:52 ЛС | профиль | цитата
filyaxxxcom писал(а):
Там же при удалении страницы с индексом=0 на PageTab -1 попадает

А я что написал
nesco писал(а):
а при удалении нулевой не выбирается ничего, что правильно, тк индекс "-1" не выбирать ничего и означает

------------ Дoбавленo:

А разве надо, чтобы что-то выбиралось после удаления нулевой, можно сделать выбор нулевой
карма: 22

0
Ответов: 485
Рейтинг: 86
#7: 2009-01-10 18:35:09 ЛС | профиль | цитата
nesco писал(а):
А у тебя в схеме сначала удаляется страница с индексом, а потом от удаленнго индекса отнимается значение. Я же не зря сохранил индекс перед удалением.
Так и у меня индекс "сохранен" в DoData...
------------ Дoбавленo:

filyaxxxcom писал(а):
А разве надо, чтобы что-то выбиралось после удаления нулевой, можно сделать выбор нулевой
А это только andrestudio известно. Я так, на всякий случай, добавил...
карма: 0

0
Разработчик
Ответов: 26135
Рейтинг: 2126
#8: 2009-01-10 18:35:45 ЛС | профиль | цитата
filyaxxxcom писал(а):
Так и у меня индекс "сохранен" в DoData...

Все правильно, это я стормозил
карма: 22

0
Ответов: 485
Рейтинг: 86
#9: 2009-01-10 18:41:55 ЛС | профиль | цитата
nesco писал(а):
А я что написал
nesco писал(а)а при удалении нулевой не выбирается ничего, что правильно, тк индекс "-1" не выбирать ничего и означает
А я тут не переварил написанное вовремя Нафлудили маленько...
карма: 0

0
Ответов: 5227
Рейтинг: 587
#10: 2009-01-10 19:31:46 ЛС | профиль | цитата
Друзья, ну почему в очередной раз приходится доказывать очевидное. Давайте расмотрим проблему глубже. Итак зададимся вопросом для чего мы используем TabControl ? правельно, им мы комутируем ChildPanel(и), Для чего мы создаём новую страницу в TabControl , для того (в основном) чтобы паралельно создать в динамике ChildPanelEx либо ChildFormEx, так идём далее, а если та самая панель нам не нужна мы её удаляем , правельно, удаляем. Теперь обращу внимание на то как. Принимаем решение удалить мы в основном на открытой странице (туже самую операцию делаем мы в браузере) так вот на какой ляд столько извращённых способов которые приведены выше , что то откуда то взять куда то что то задать, удалить, потом опять выделить, по меньшей мере три лишних операции и лишние компоненты.
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Разработчик
Ответов: 26135
Рейтинг: 2126
#11: 2009-01-10 19:49:15 ЛС | профиль | цитата
Ну да, конечно, проще сделать то же самое в компненте и нарушить совместимость со всеми старыми версиями, кто такого не применяет.
Никто не будет на каждый чих компоненты доделывать и фигня это
andrestudio писал(а):
по меньшей мере три лишних операции и лишние компоненты

Вот если бы этого невозможно было бы штатными компонентами сделать, тогда да, я пойму, а то делается заявленное совершенно элементарно
карма: 22

1
Голосовали:andrestudio
Ответов: 5227
Рейтинг: 587
#12: 2009-01-10 20:26:37 ЛС | профиль | цитата
Вразуми как при добавлении новой точки может нарушится совместимость? nesco, я не програмист но не абсолютный баран тоже, новая процедура совместимость нарушит? В очередной раз убедился что пожелания писать в этот раздел бессмыслено, быстрей научат рисовать или через заборы лазить, хотя это было просто пожелание на будущее а не настоятельная просьба, впрочем как знаете, самим такие схемы рисовать и рассматривать, я лично в этом разделе не участвую, оказалось что у меня голова для того чтобы шапку носить.
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Разработчик
Ответов: 26135
Рейтинг: 2126
#13: 2009-01-10 20:37:26 ЛС | профиль | цитата
andrestudio писал(а):
но не абсолютный баран тоже

Я тебя таковым не считаю.
andrestudio писал(а):
я лично в этом разделе не участвую, оказалось что у меня голова для того чтобы шапку носить

Ну нифига не понял.
карма: 22

0
Ответов: 5227
Рейтинг: 587
#14: 2009-01-10 20:46:53 ЛС | профиль | цитата
nesco писал(а):
Ну да, конечно, проще сделать то же самое в компненте и нарушить совместимость со всеми старыми версиями, кто такого не применяет


Вот здесь ты сам себе противоречишь, только не говори что новых точек за всё это время (ну этак за пол года) не появлялось

andrestudio писал(а):
лично в этом разделе не участвую, оказалось что у меня голова для того чтобы шапку носить


Да отмолчатся гораздо проще, не думать не напрягаться не доказывать, вот и всё, ничего личного.
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Разработчик
Ответов: 26135
Рейтинг: 2126
#15: 2009-01-10 20:58:35 ЛС | профиль | цитата
andrestudio писал(а):
не думать не напрягаться не доказывать

К чему это все, я не понял...

По особому заказу трудящихся добавлен метод DeleteCurrent который удаляет выбранную страницу и делает текущей предыдущую, при удалении нулевой страницы, она же и остается текущей
карма: 22

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