|
|
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Докпри достаточных ресурсах машины GTK-виджет работает нормально даже при выше приведенном коде Фигня это, если резко дёрнуть мышь, то она всё равно уйдёт из области контрола. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2017, 13:33:03 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Док Код: pascal 1. 2. 3. 4. 5. 6. Любишь же ты всё переусложнять... :) Код: pascal 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2017, 13:42:19 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
...ещё и mouseUp там не нужен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2017, 13:46:19 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey...ещё и mouseUp там не нужен. Да, ты прав. Теперь не нужен :) Поковырялся еще в коде, добавил "ограничители" мин/макс размеров. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. Пришлось добавить кода в OnResize формы Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Фризов, по-прежнему, не наблюдаю. Ну, или почти. Все-таки одновременно запущенные Screen2Gif и VMWare жрут ресурсы встроенной видюхи :) Правленный модуль с проектом приложил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2017, 00:50:27 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
ДокПоковырялся еще в коде, добавил "ограничители" мин/макс размеров. Ты пугаешь меня... Вместо использования стандартного свойства Constrains, городишь огород, который ещё и не работает (сходу смог уменьшить панель до 1 пикселя. хоть по вертикали, хоть по горизонтали) :) Ну и раз уж курсор меняется в mouseMove, то из mouseDown назначение курсора тоже можно убрать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2017, 02:09:00 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Причесал чуть-чуть... Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2017, 02:24:57 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Kazantsev AlexeyТы пугаешь меня... я сам себя пугаюсь иногда: то self пропущу, то constraints искаропки Рано мне еще в программисты ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2017, 08:49:11 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Кстати, я правую и нижнюю границу не зря вручную ограничил. Там может лежать контролл или граница формы, за которую заходить не следует ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2017, 08:52:14 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
ДокКстати, я правую и нижнюю границу не зря вручную ограничил. Там может лежать контролл или граница формы, за которую заходить не следует Ну так и это Constraints решает: Constraints.MaxWidth := Xmax - Panel.Left; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2017, 10:27:08 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Kazantsev AlexeyНу так и это Constraints решает: Constraints.MaxWidth := Xmax - Panel.Left; хм, тоже верно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2017, 10:34:42 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
кстати, добавил перерисовку панели при ресайзе Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. зы. MaxConstrX/Y оставил. имхо, код менее громоздкий и пользоваться удобнее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2017, 14:08:01 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Докзы. MaxConstrX/Y оставил. имхо, код менее громоздкий и пользоваться удобнее Это отсутствие кода более громоздкое чем вот эта вот лесенка? Если так уж хочется иметь свойство Max/MaxY, то можно таки вспомнить об ООП, в частности об инкапсуляции, и соордуить свойство с сеттером типа этого: Код: pascal 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2017, 14:19:42 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey, Фиг его знает, тут подумать надо. Похоже, пока тестовое приложение напишу, из этой панельки полноценный компонент с разными фишками получится :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2017, 16:22:57 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
ДокПохоже, пока тестовое приложение напишу, из этой панельки полноценный компонент с разными фишками получится :) Похоже, получилось. Заодно сделал двуязычным для пробы :). Кому интересно, исподники и демка в аттаче. Заодно, гляньте, плз, на линуксе. Че-та кнопка редактирования квадратной через раз отрисовывается (баг, какой-то, похоже). А также, если английские комменты в коде безграмотные, поправьте, плз. Буду благодарен. У меня грамматика хромает. "Оно хорошее, но почему-то хромает" © ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2017, 00:48:35 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Док, Посмотрел на линуксе - вроде нормально кнопка отрисовывается. А нафига ты продублировал мышинные события и назначаешь имена создаваемым в рантайме компонентам? p.s. Ты меня там из копирайтов-то удали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2017, 02:16:05 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Kazantsev AlexeyТы меня там из копирайтов-то удали. стыдно за компонент? Там половина твоих идей и их реализаций. Kazantsev AlexeyА нафига ты продублировал мышинные события и назначаешь имена создаваемым в рантайме компонентам? Я пока по-другому не умею ;) Все-таки всю жизнь другим занимался. Потом посмотрю, чего лишнее, доделаю-переделаю. Пока удовлетворяет текущим нуждам, буду писать основной проект дальше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2017, 08:42:21 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexeyнафига ты продублировал мышинные события и назначаешь имена создаваемым в рантайме компонентам? Вспомнил, осталось после отладки. Поправлю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2017, 09:02:53 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
И еще вопрос: почему в русской версии капшены системного диалога здесь Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. все остаются английскими? Винда же русская... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2017, 09:11:05 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Док, Если ты про системный "MessageBox", то он использует локализацию винды для кнопок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2017, 10:05:55 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
Доквсе остаются английскими? Винда же русская... Это не винда. Механизм аналогичный дельфовому: переводи ресурсы. https://stackoverflow.com/questions/35848393/lazarus-messagebox-how-to-localize-buttons ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2017, 10:07:35 |
|
||
|
Как передать сендер в обработчик сообщений
|
|||
|---|---|---|---|
|
#18+
wadman, ага, везде так, просто не обращал раньше внимания. Нафиг, оставлю на потом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2017, 10:56:52 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39551009&tid=2041541]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
161ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
67ms |
get tp. blocked users: |
2ms |
| others: | 218ms |
| total: | 490ms |

| 0 / 0 |
