Вверх ↑
Этот топик читают: Гость
Ответов: 113
Рейтинг: 1
#1: 2016-04-25 10:23:15 ЛС | профиль | цитата
как сделать удобный переключатель, примерно в таком виде code_37225.txt или что то подобное. управлять кнопками вверх - вниз, прокруткой. список строк сжатый до 1 строчки , не работает без нажатия на него - onClick .
карма: 0
well done turner
0
файлы: 1code_37225.txt [761B] [287]
Ответов: 8892
Рейтинг: 823
#2: 2016-04-25 12:32:55 ЛС | профиль | цитата
powerbatman, желаете странного code_37226.txt
карма: 19

0
файлы: 1code_37226.txt [1.3KB] [279]
Ответов: 113
Рейтинг: 1
#3: 2016-04-25 14:42:27 ЛС | профиль | цитата
Леонид писал(а):
powerbatman, желаете странного code_37226.txt
оо спасибо , я тут придумал такое code_37228.txt
------------ Дoбавленo в 14.42:
по идее я все данные о годах беру из базы данных , а там они записаны как год, например 2012 2013 2014 2015 2016,и вот , что бы отображалось красиво , "База данных 2012 год" решил такое намудрить
карма: 0
well done turner
0
файлы: 1code_37228.txt [2.3KB] [427]
Ответов: 16884
Рейтинг: 1239
#4: 2016-04-25 15:51:31 ЛС | профиль | цитата
powerbatman писал(а):
по идее я все данные о годах беру из базы данных , а там они записаны как год, например 2012 2013 2014 2015 2016,и вот , что бы отображалось красиво

code_37230.txt

Работаешь с базой данных, то и работай с базой данных.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_37230.txt [1.5KB] [275]
Ответов: 113
Рейтинг: 1
#5: 2016-04-25 18:03:44 ЛС | профиль | цитата
а я вот так делал code_37231.txt


карма: 0
well done turner
0
файлы: 1code_37231.txt [3.6KB] [425]
Ответов: 16884
Рейтинг: 1239
#6: 2016-04-25 19:22:36 ЛС | профиль | цитата
powerbatman писал(а):
а я вот так делал

powerbatman_1.gif
Что в переводе на русский означает:
Выбрать не повторяющиеся значения года из таблицы Champ и отсортировать их по значению года.
Можно отсортировать и по году в обратном порядке.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1powerbatman_1.gif [18.6KB] [507]
Ответов: 113
Рейтинг: 1
#7: 2016-04-26 00:14:54 ЛС | профиль | цитата
Tad писал(а):
Выбрать не повторяющиеся значения года из таблицы Champ и отсортировать их по значению года.
Можно отсортировать и по году в обратном порядке.
я не знал что так все просто, спасибо !!!!!
------------ Дoбавленo в 00.14:
кажется научился :D , только вот что там в SQLite_DB в FileName прописано :memory: , это создается база данных в памяти ?

Add(MainForm,2953706,266,98)
{
Point(onClose)
link(onCreate,15491498:doOpen,[])
link(onClose,15491498:doClose,[])
}
Add(SQLite_DB,15491498,350,112)
{
FileName=":memory:"
link(onOpen,6853999:doEvent1,[])
}
Add(SQLite_Exec,6838179,511,112)
{
SQL="CREATE TABLE champ(\r\nid INTEGER PRIMARY KEY,\r\nYears INTEGER);\r\n\r\nINSERT INTO champ (Years) values(2012);\r\nINSERT INTO champ (Years) values(2013); \r\nINSERT INTO champ (Years) values(2014);\r\nINSERT INTO champ (Years) values(2014);\r\nINSERT INTO champ (Years) values(2014);\r\nINSERT INTO champ (Years) values(2015);\r\nINSERT INTO champ (Years) values(2016);\r\nINSERT INTO champ (Years) values(2014);\r\n"
AddHint(191,-93,143,273,SQL)
}
Add(Hub,6853999,413,112)
{
link(onEvent1,6838179:doExec,[])
link(onEvent2,7353169:doEvent1,[(440,125)(440,179)(240,179)(240,237)])
}
Add(FormatStr,4478258,301,231)
{
Mask="SELECT DISTINCT\r\n"База данных за "||Years||" год."\r\nFROM champ ORDER BY Years;"
link(onFString,3695854:doQuery,[])
AddHint(-230,15,161,39,Mask)
}
Add(SQLite_Query,3695854,350,231)
{
link(onQuery,10109559:doAdd,[])
link(dbHandle,8569801:Var2,[])
}
Add(FormatStr,6737863,301,280)
{
Mask="SELECT count(DISTINCT Years)\r\nFROM champ;"
link(onFString,1106559:doQuery,[])
AddHint(-230,29,172,26,Mask)
}
Add(SQLite_Query,1106559,385,280)
{
link(onQuery,11747704:doOperation,[])
link(dbHandle,8569801:Var3,[(391,201)])
}
Add(UpDown,7958000,497,273)
{
Left=5
Top=37
Width=310
Color=-16777214
Kind=0
Point(doMax)
link(onPosition,10109559:doSelect,[])
}
Add(ComboBox,10109559,553,231)
{
Left=5
Top=7
Width=310
Height=21
Font=[Verdana,14,0,0,204]
Text=""
ReadOnly=0
ItemHeight=25
Point(doSelect)
Point(onSelect)
link(onClick,8163130:doEvent1,[])
link(onSelect,8163130:doEvent2,[])
}
Add(Math,11747704,441,280)
{
OpType=1
Op2=1
link(onResult,7958000:doMax,[])
}
Add(Hub,7353169,252,231)
{
link(onEvent1,4478258:doString,[])
link(onEvent2,6737863:doString,[(284,244)(284,286)])
}
Add(GetDataEx,8569801,350,196)
{
link(Data,15491498:dbHandle,[])
}
Add(Label,1103554,560,329)
{
Left=25
Top=95
link(Text,10109559:String,[])
}
Add(Hub,8163130,602,238)
{
InCount=2
OutCount=1
link(onEvent1,1103554:doText,[(641,244)(641,300)(548,300)(548,335)])
}

а так получается отлично - и прокруткой мышки и стрелками - вверх-вниз и кнопками и главное всё из базы данных , даже если несколько раз будут введены одинаковые значения в колонку Years ошибки не случиться . Спасибо за помощь!!!
карма: 0
well done turner
0
Ответов: 16884
Рейтинг: 1239
#8: 2016-04-26 16:39:59 ЛС | профиль | цитата
powerbatman писал(а):
только вот что там в SQLite_DB в FileName прописано :memory: , это создается база данных в памяти ?
Да.

powerbatman писал(а):
кажется научился
Это только кажется.
Вот кусочек из твоей схемы :
#pas
Add(FormatStr,6737863,490,413)
{
Mask="SELECT count(DISTINCT Years)\r\nFROM champ;"
link(onFString,1106559:doQuery,[])
AddHint(-230,29,172,26,Mask)
}
Add(SQLite_Query,1106559,532,413)
{
link(onQuery,11747704:doOperation,[])
}
Add(Math,11747704,574,413)
{
OpType=1
Op2=1
}

И зачем так делать ?У тебя в руках БД. Значит можно было сделать так:
#pas
Add(SQLite_Query,1106559,525,413)
{
SQL="SELECT (count(DISTINCT Years)-1) FROM champ;"
}
и два компонента долой.А по взрослому, то у тебя уже количество лет есть:
code_37234.txt
Нахрена его просить ещё раз?
Компонентов в HiAsm много, а лишних в схеме не надо.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_37234.txt [2.1KB] [297]
Ответов: 113
Рейтинг: 1
#9: 2016-04-26 22:21:06 ЛС | профиль | цитата
Tad писал(а):
У тебя в руках БД. Значит можно было сделать так:
код
и два компонента долой.
А по взрослому, то у тебя уже количество лет есть:
code_37234.txt
Нахрена его просить ещё раз?
Компонентов в HiAsm много, а лишних в схеме не надо.


SELECT (count(DISTINCT Years)-1) FROM champ; это получается что отнять 1 прямо в запросе даже если неизвестно сколько там строк , это гениально!

и так я все изменил и схема значительно уменьшилась , в таблице несколько значений , вот примерно так получается code_37239.txt
------------ Дoбавленo в 22.20:
у меня в таблице Datas - содержит значения в таким виде 12.05/15.05 начало и конец
карма: 0
well done turner
0
файлы: 1code_37239.txt [5.3KB] [420]
Ответов: 16884
Рейтинг: 1239
#10: 2016-04-27 00:15:00 ЛС | профиль | цитата
powerbatman,
code_37240.txt
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_37240.txt [5.3KB] [287]
Ответов: 113
Рейтинг: 1
#11: 2016-04-27 12:01:24 ЛС | профиль | цитата
спасибо ! про такое не знал даже "с"||substr(Datas,1,5)||" по "||substr(Datas,7,5),
весь запрос и получение в нужном виде в одной строке.
карма: 0
well done turner
0
Ответов: 16884
Рейтинг: 1239
#12: 2016-04-27 14:05:06 ЛС | профиль | цитата
code_37242.txt
При работе с клавы : переход с выбора даты на выбор мероприятия и обратно - клавиша Tab
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_37242.txt [5.2KB] [291]
Ответов: 113
Рейтинг: 1
#13: 2016-04-27 14:40:41 ЛС | профиль | цитата
отлично смотриться, а как работает кнопка Tab ? в элементах есть TabOrder , но там записан 0 ? схема стала более сложнее )

------------ Дoбавленo в 14.40:
а как приходит на точку str2 значение для Title , там только 1 задействована ? FROM champ WHERE Years=%1 AND Title=%2; .но все работает )
карма: 0
well done turner
0
13
Сообщение
...
Прикрепленные файлы
(файлы не залиты)