Вверх ↑
Этот топик читают: Гость
Гость
Ответов: 17029
Рейтинг: 0
#31: 2010-05-06 10:17:23 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-03 16:36:40
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#32: 2010-05-06 10:26:26 ЛС | профиль | цитата
Видно я еще не совсем проснулся. Нифига не понял.
Что такое "текстовая таблица" ?
Какой компонент ?
Про "как бы" даже не знаю как бы спросить.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Гость
Ответов: 17029
Рейтинг: 0
#33: 2010-05-06 10:40:16 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-03 16:36:41
карма: 0

0
Ответов: 8926
Рейтинг: 823
#34: 2010-05-06 10:54:02 ЛС | профиль | цитата
vovcheck, во всех интерфейсных элементах есть точки нажатия и отпускания клавиш, выдающие код клавиши. При их использовании не нужно контролировать фокус на элементе и использовать KeyBoard: code_18112.txt Для куска схемы, выполняющего определённую функцию, можно использовать контейнер с именованными точками и коментарием.
карма: 19

1
файлы: 1code_18112.txt [2.2KB] [211]
Голосовали:vovcheck
Разработчик
Ответов: 26153
Рейтинг: 2127
#35: 2010-05-06 12:21:25 ЛС | профиль | цитата
vovcheck, на тебе самый простой и настраиваемый клавиатурный интерфейс

code_18114.txt
------------ Дoбавленo в 12.20:
Леонид писал(а):
во всех интерфейсных элементах есть точки нажатия и отпускания клавиш

Леонид, не везде, и не всегда это работает, почитай несколько постов выше у Tad-a. Лучше всего ловить именно системное нажатие клавиш
------------ Дoбавленo в 12.21:
Кстати, а зафиг там мультик с кучей Case, посмотри у меня в схеме, как это реализовывается без всяких мультиков
карма: 22

0
файлы: 1code_18114.txt [1KB] [208]
Ответов: 8926
Рейтинг: 823
#36: 2010-05-06 12:33:13 ЛС | профиль | цитата
nesco, vovcheck,
nesco писал(а):
зафиг там мультик с кучей Case
Леонид писал(а):
Для куска схемы, выполняющего определённую функцию
исключительно для "читабельности" схемы
nesco писал(а):
не везде, и не всегда это работает
В данном случае - работает
------------ Дoбавленo в 12.33:
nesco писал(а):
системное нажатие клавиш
плюс отлавливание фокуса на нужном поле
карма: 19

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#37: 2010-05-06 12:34:56 ЛС | профиль | цитата
91.211.187.218.vpn.tsk.ru писал(а):
Во Flexe есть возможность замены стандартного редактора ячейки таблицы на алтернативный

См пример %HiAsm%ElementsDelphiExampleFormsMTStrTblWith_EditCtrl.sha
------------ Дoбавленo в 12.34:
Леонид писал(а):
исключительно для "читабельности" схемы

Неправильное решение, с эти сейчас прекрасно справляется один или пара StrList-ов, причем, намного функциональнее, не говоря уже, о количестве занимаемого кода
карма: 22

0
Ответов: 8926
Рейтинг: 823
#38: 2010-05-06 12:36:04 ЛС | профиль | цитата
nesco, если коллега vovcheck с ходу разберётся в этом MTStrTbl гиганте
карма: 19

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#39: 2010-05-06 12:38:36 ЛС | профиль | цитата
Леонид писал(а):
плюс отлавливание фокуса на на нужном поле

С помощью StrList-ов, я тебе такое дело в динамике сделаю с разными индексами, куда хочешь направить можно. А схема получится в разы меньше
карма: 22

0
Гость
Ответов: 17029
Рейтинг: 0
#40: 2010-05-06 12:38:55 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-03 16:36:41
карма: 0

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#41: 2010-05-06 12:39:37 ЛС | профиль | цитата
Леонид писал(а):
с ходу разберётся в этом MTStrTbl гиганте

Чел спросил, я ответил. Разбираться или не разбираться, это его дело
карма: 22

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#42: 2010-05-06 13:14:34 ЛС | профиль | цитата
Вот одна из реализаций отлова фокуса элементов интерфейса и привязка их к индексу

code_18115.txt

------------ Дoбавленo в 13.14:
А можно не парить моск с массивом клавиш и сделать вот так, используя Key-интерфейс формы



Add(MainForm,2953706,203,210)
{
Width=389
Point(onKeyDown)
link(onKeyDown,11831633:doGetIndex,[])
}
Add(StrList,11831633,287,189)
{
@Hint=#12:KeyToMyIndex|
Strings=#2:39|2:37|2:38|2:40|
Point(doGetIndex)
Point(onGetIndex)
link(onGetIndex,16341277:doCalc,[])
AddHint(-121,85,86,13,@Hint)
}
Add(StrList,99913,511,154)
{
Strings=#13:One Memo Left|14:One Memo Right|11:One Memo Up|13:One Memo Down|0:|0:|13:Two Memo Left|14:Two Memo Right|11:Two Memo Up|13:Two Memo Down|
Point(doGetString)
Point(onGetString)
link(onGetString,1341810:doText,[])
}
Add(Label,1341810,567,161)
{
Left=100
Top=235
Width=193
Height=20
Font=[MS Sans Serif,10,1,0,1]
Caption=""
AutoSize=1
Alignment=2
}
Add(InfoTip,4770262,140,147)
{
Info=#18:KeyBoard Interface|
Width=197
Height=151
}
Add(Memo,10911404,287,35)
{
Left=5
Top=5
Width=180
Height=205
Point(onSetFocus)
link(onSetFocus,430789:doWork1,[])
}
Add(Memo,5326158,287,91)
{
Left=190
Top=5
Width=180
Height=205
Point(onSetFocus)
link(onSetFocus,430789:doWork2,[(341,104)(341,55)])
}
Add(ChanelToIndex,430789,364,42)
{
link(onIndex,12467797:doValue,[])
}
Add(MathParse,16341277,413,196)
{
MathStr="%1 + %2*6"
link(onResult,99913:doGetString,[])
link(X2,12467797:Value,[])
}
Add(Memory,12467797,420,42)
{
}

карма: 22

0
файлы: 1code_18115.txt [1.7KB] [208]
Ответов: 8926
Рейтинг: 823
#43: 2010-05-06 14:42:44 ЛС | профиль | цитата
nesco, (ИМХО) на сегодняшних ПК размер программы (величина кода) отодвинута на второй план учитывая гигабайтные ОЗУ и уже терабайтные диски, а вот скачка быстродействия давно не было, достигли местного максимума поэтому настоящие программеры (из тех, что рисуют только в Paint) заботятся сначала о скорости выполнения и о загрузке процессора HiAsm выдаёт не самые быстрые программы, строковые - тем более; недавно сам же nesco с большим удовольствием боролся за микросекунды на поиске в строках (надо отметить, что поборол и получил спасибо от благодарных пользователей!)
карма: 19

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#44: 2010-05-06 14:59:46 ЛС | профиль | цитата
Вот так, будет более правильно, с защитой от многократных повторений одного кода клавиши

code_18116.txt
------------ Дoбавленo в 14.52:
Леонид, есть одно "но", на которое мне недавно ткнул Tad -- зачем учить новичков на старых решениях, кога есть более новые, с них и надо начинать, странно другое -- почему он никогда не говорит этого тебе, отчего я и делаю выводы о его предвзятом отношения именно в отношении моей персоны
------------ Дoбавленo в 14.55:
А вот теперь скажите мне, сколько компонентов можно выкинуть из схемы пользователя, используя мое решение
------------ Дoбавленo в 14.59:
Леонид писал(а):
что поборол и получил спасибо от благодарных пользователей

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

0
файлы: 1code_18116.txt [1.5KB] [185]
Ответов: 16884
Рейтинг: 1239
#45: 2010-05-06 15:25:40 ЛС | профиль | цитата
А можно вообще не парить (при добавлении клавиш) и результирующие коды на 10 кб меньше.
code_18118.txt
------------ Дoбавленo в 15.16:
nesco писал(а):
отчего я и делаю выводы о его предвзятом отношения именно в отношении моей персоны
nesco, я Леониду тоже говорил и неоднократно.
И не копаю я под тебя.
------------ Дoбавленo в 15.25:
Леонид писал(а):
на сегодняшних ПК размер программы (величина кода) отодвинута на второй план учитывая гигабайтные ОЗУ и уже терабайтные диски
не совсем отодвинуты. При обмене через инет - ограничитель время обмена (а время, как известно, деньги.)
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_18118.txt [1.5KB] [166]
Сообщение
...
Прикрепленные файлы
(файлы не залиты)