Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
24.06.2003 13:31

Nash
Участник
Зарегистрирован: 22.04.2003
Сообщений: 44
Вебсайт

Придумать, начать и дожить до релиза...

Знатоки Делфи, помогите!

Здравствуйте!
Тут вот возникли два вопроса, связанные с программированием на Делфи.
Особенно волнует второй, хотя подозреваю, что это только моя проблема.

1. Как реализовать следующий алгоритм:
вывод строки
останов вывода до нажатия на любую клавишу
вывод очередной строки

В Паскале под ДОС такое можно было реализовать так:

writeln('');
repeat
until keypress;
writeln('');


Как это сделать в Делфи?


2. Событие onkeydown вызывает звук ошибки Windows (или как его там? короче, ding.wav). Если отключить звуковые схемы, начинает трещать спикер.
А ведь на Enter приходится жать очччень часто. Раздражает ужасно. :x

Неактивен

0    0    #2
07.07.2003 02:41

dyx
Участник
Зарегистрирован: 15.12.2001
Сообщений: 99

Re: Знатоки Делфи, помогите!

  Блин, написал длиннющий ответ, и по закону подлости завис компьютер! Сегодня в сжатой форме:
   1. Попробуй Application.ProcessMessages (неохота долго объяснять, посмотри хелп).
   2. Сделай еще одну модальную форму, которую будешь вызывать каждый раз при вводе текста (на ней, ессно, должен быть Edit)

   Отчаянный Дух (ОДИН)

   P.S. Лучше не заниматься такой фигней на Дельфи smile По себе знаю smile Пиши под WinAPI wink)

Неактивен

0    0    #3
07.07.2003 02:45

dyx
Участник
Зарегистрирован: 15.12.2001
Сообщений: 99

Re: Знатоки Делфи, помогите!

  Ах да, второй вопрос (то был ответ на первый smile:
   Если ты пользуешься Memo и в свойствах установлен ReadOnly=True, то от пищалки никуда не денешься. Терпи smile
   А если что-то другое, то опиши подробней.

   Отчаянный Дух (ОДИН)

   P.S. Между делом: а какого фига форум taplap'а меня считает гостем? Всегда ж Духом был sad( Неохота пароль набивать smile

Неактивен

0    0    #4
10.07.2003 19:39

Adramelek
Участник (+1)
Зарегистрирован: 07.07.2006
Сообщений: 193

Re: Знатоки Делфи, помогите!

Дух написал:

P.S. Между делом: а какого фига форум taplap'а меня считает гостем? Всегда ж Духом был sad( Неохота пароль набивать smile

Cookies...

Неактивен

0    0    #5
13.07.2003 03:39

dyx
Участник
Зарегистрирован: 15.12.2001
Сообщений: 99

Re: Знатоки Делфи, помогите!

Adramelek написал:


Cookies...

Ну что, флейм по старинке? smile

   Отчаянный Дух (ОДИН)

   P.S. Ну до чего же достают эти рисунки-смайлики! И каждый раз жать этот пунктик внизу...

Неактивен

0    0    #6
21.08.2003 17:11

Nash
Участник
Зарегистрирован: 22.04.2003
Сообщений: 44
Вебсайт

Придумать, начать и дожить до релиза...

Re: Знатоки Делфи, помогите!

Дух, спасибо!
Ведь действительно помогло, несмотря на то что и ответ небольшой получился.
Только вот с треньканьем так ничего и не вышло. И похоже дело тут не только в readonly=true поля memo. Пришлось поступить следующим образом: заменить в звуковой схеме файл ding.wav на пустой. То есть винда все равно звук ошибки выдает, но его уже не слышно:)

Неактивен

0    0    #7
24.08.2003 03:05

dyx
Участник
Зарегистрирован: 15.12.2001
Сообщений: 99

Re: Знатоки Делфи, помогите!

  Всегда пожалуйста!

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

   Отчаянный Дух (ОДИН)

Неактивен

0    0    #8
26.08.2003 12:52

Nash
Участник
Зарегистрирован: 22.04.2003
Сообщений: 44
Вебсайт

Придумать, начать и дожить до релиза...

Re: Знатоки Делфи, помогите!

Дух написал:

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

   

Придется писать инсталлятор, который будет искать на ентом компе файл ding.wav (он ведь обычно лежит в папке media ?) и переписывать поверх него пустой. Потом при анинсталле можно все будет вернуть назад.

Неактивен

0    0    #9
29.08.2003 17:39

WildWizard
Участник
Откуда: Россия, Красноярск
Зарегистрирован: 01.03.2001
Сообщений: 450
Вебсайт

Nobody expects the Spa.. Oh, never&&mind.

Re: Знатоки Делфи, помогите!

ужасы какие-то

Неактивен

0    0    #10
29.08.2003 22:15

GrAndrey
папа RTADS и Бяка (+49, -2)
Откуда: Москва
Зарегистрирован: 15.09.2002
Сообщений: 1198
Вебсайт

меньше слов

Re: Знатоки Делфи, помогите!

Оригинально!
(Я такую прогу ни за что себе ставить не буду!)

Неактивен

0    0    #11
01.09.2003 16:24

psycho
Участник
Зарегистрирован: 24.12.2002
Сообщений: 14

Re: Знатоки Делфи, помогите!

Nash написал:

2. Событие onkeydown вызывает звук ошибки Windows...

Либо у тебя кривая Дельфя, либо руки... (:
У меня Дельфи никаких подобных шалостей себе не позволяет! (:

Неактивен

0    0    #12
01.09.2003 16:27

psycho
Участник
Зарегистрирован: 24.12.2002
Сообщений: 14

Re: Знатоки Делфи, помогите!

Nash написал:

2. Событие onkeydown вызывает звук ошибки Windows...

Либо у тебя кривая Дельфя, либо руки... (:
У меня Дельфи никаких подобных шалостей себе не позволяет! (:

Неактивен

0    0    #13
06.09.2003 15:04

Nash
Участник
Зарегистрирован: 22.04.2003
Сообщений: 44
Вебсайт

Придумать, начать и дожить до релиза...

Re: Знатоки Делфи, помогите!


Либо у тебя кривая Дельфя, либо руки... (:
У меня Дельфи никаких подобных шалостей себе не позволяет! (:

Что ж, всеобщим голосованием было утверждено, что
моя Дельфи немного не в себе. Не спорю, так как давно подозревал об этом, но списывал все на огрехи ОС.
Только немного не понял иронии насчет кривых рук sad
Вроде обработчик написать -много ума не надо, а заплатить около 1700$ за лицензионный продукт, думаю, не смог никто из присутствующих. Поэтому и не удивительно, что мне попалась битая копия...

Неактивен

0    0    #14
26.09.2003 23:54

Соник
Участник
Откуда: Россия, г. Тольятти
Зарегистрирован: 21.04.2002
Сообщений: 89
Вебсайт

Re: Знатоки Делфи, помогите!

(Насчёт звука при нажатии enter)
Посмотри, может на форме стоит KeyPreview=true. Короче, попробуй пиканье убрать через это свойство. А ещё вариант: делаешь маленькую кнопку и делаешь ей свойство default=true.
Хотя, думаю, вот верный ответ: при обработке события нажатия на кнопку есть переменная (параметр процедуры) логического типа (boolean), какая конкретно, уже не помню. Но вот, если в процедуре её стваить в false, то ничего не будет происходить. (Вроде так должно быть). А если уж ничего не помогло, попробуй поспрашивать на http://delphi.mastak.ru

Неактивен

0    0    #15
12.10.2003 23:14

Nash
Участник
Зарегистрирован: 22.04.2003
Сообщений: 44
Вебсайт

Придумать, начать и дожить до релиза...

Re: Знатоки Делфи, помогите!

Мда-а-а...
Поставил я себе седьмые Делфя. Запустил старые исходники...и все вернулось на круги своя!
Все так же стучит (пищит?), ну что же с этим делать, а ?!
Предлагаю всем дельфинистам провести следственный эксперимент: создать новое приложение, на пустую форму поместить edit. Запустить, передать edit'у фокус ввода (чтоб курсор в нем мигал smile ) и понажимать enter. Если слышно эдакое "п-пынь!", значит я не один, а если нет - выходит мне сильно повезло, и у меня уже две кривые дельфи, три кривые винды и пара кривых рук smile

Неактивен

0    0    #16
27.12.2003 13:41

Nash
Участник
Зарегистрирован: 22.04.2003
Сообщений: 44
Вебсайт

Придумать, начать и дожить до релиза...

Re: Знатоки Делфи, помогите!

Гм... А теперь правильный ответ smile
TEdit в Делфи имеет "запрещенные" клавиши, при нажатии на которые (если TEdit в фокусе) выдается злополучный звук. В их числе - и enter. Избежать этого поможет следующая строка в обработчике OnKeyPress:

if key=#13 then key:=#0;

Звуков больше не будет, а в обработчике OnKeyDown можно реализовать все действия, связанные с нажатием на ввод.

Неактивен

0    0    #17
16.08.2005 10:05

skr
Гость

Re: Знатоки Делфи, помогите!

Здаствуйте.
Прошу прощения за достаточно нубский вопросс. Я сам в делфи не разбираюсь. Всю ночь ковырял интырнет в поисках курсового для моей девушки.
Тема курсового такая:"Модель остывания нагретых тел в атмосфере". Должна быть написана програмулина в делфи, которая изображает нагретое тело (допустим круг)... определенного цвета (допустим красного)... И за определенный период времени это тело должно изменить свой цвет на синий.... плавно от краев к центру.

Есть ли готовые аналоги такой вот лабуды ?smile
Кто может... помогите... а то миня убьют sad

0    0    #18
20.10.2005 10:54

sbs
Участник
Зарегистрирован: 20.10.2005
Сообщений: 1

Re: Знатоки Делфи, помогите!

Здравствуйте!
Подскажите, кто знает, как в матрице StrindGrid
выделить мышкой отдельную ячейку и записать туда число
с пульта, а не из программы?

Неактивен

0    0    #19
24.03.2006 18:08

qwerty
Участник (+244, -117)
Зарегистрирован: 21.12.2005
Сообщений: 206
Вебсайт

Re: Знатоки Делфи, помогите!

по предыдущим постам:
1. if key=#13 then key=#0 { действительно нормальная Дельфя при нормальных руках и виндах без этого пищит. я до этого додумался довольно быстро и, как вижу, не я один }
2. тебе нужен текстовый квест про нагретое тело? - подожди, к КРИЛ-2006 будет готов  smile
3. с какого ещё пульта  ???

теперь к делу:
решился таки на КРИЛ писать квест на Дельфях ввиду общей неудовлетворённости существующими платформами (даже мелкие недостатки становятся решающими, когда хочется написать квест НА КОНКУРС).

в связи с этим ВОПРОС:
пишу в консольном приложении по русски, а запускаю- выходит абракадабра (у нас её ещё называют "грузиница"). как и что можно с этим сделать?

Неактивен

0    0    #20
24.03.2006 19:18

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Знатоки Делфи, помогите!

Конвертировать текст в кодировку 866: CharToOem(StrFrom,StrTo: PChar):Bool;

Код:

function WinToDos (S:string): PChar;
var R: PChar;
begin
  R:=StrNew(PChar(S));
  CharToOem(PChar(S),R);
  WinToDos:=R;
end;

Неактивен

0    0    #21
14.12.2008 21:09

noname
Участник (+36, -9)
Зарегистрирован: 04.04.2008
Сообщений: 729

noname

Re: Знатоки Делфи, помогите!

а какие модули подключать? а то пишет: Undeclared identifier: 'CharToOem'. у меня- Delphi 5.

UPD

заработало!!!!!!!!!!!!

а то я уж и забыл, как тогда делал (qwerty- это я, и совет мне тогда помог).

UPD

модуль Windows

p.s.

понравились мне эти буковки: UPD

UPD

Код:

program Project1;

{$APPTYPE CONSOLE}

uses
  Windows,  SysUtils;

var
 S: string;

{  Конвертировать текст в кодировку 866: CharToOem(StrFrom,StrTo: PChar):Bool;}
function WinToDos (S:string): PChar;
var R: PChar;
begin
  R:=StrNew(PChar(S));
  CharToOem(PChar(S),R);
  WinToDos:=R;
end;

function DosToWin (S:string): PChar;
var R: PChar;
begin
  R:=StrNew(PChar(S));
  OemToChar(PChar(S),R);
  DosToWin:=R;
end;

begin
  { TODO -oUser -cConsole Main : Insert code here }
  s:='Привет ВСЕМ !!!';
  s:=WinToDos(s);
  writeln(s);
  readln(s);
  writeln(s);
  s:=DosToWin(s);
  if s='кэролл' then writeln('гип-гип');
  readln;
end.

ну, исправить незначительную ошибку в этом коде сможет любой, кто его поймёт smile

Отредактировано noname (14.12.2008 21:58)

Неактивен

0    0    #22
14.12.2008 22:22

fireton
некто с бородой (+354, -92)
Откуда: Москва
Зарегистрирован: 22.08.2005
Сообщений: 1103
Вебсайт

Тон

Re: Знатоки Делфи, помогите!

Фигассе у тебя задержки... wink

Неактивен

0    0    #23
18.12.2008 18:42

BreakMT
Участник (+2)
Зарегистрирован: 31.07.2007
Сообщений: 16
Вебсайт

Re: Знатоки Делфи, помогите!

если кому нужно - вот исходники моего текстого квеста на дельфах
http://breakmt.narod.ru/billy_src.zip
может поможет кому

Неактивен

0    0    #24
18.12.2008 19:42

noname
Участник (+36, -9)
Зарегистрирован: 04.04.2008
Сообщений: 729

noname

Re: Знатоки Делфи, помогите!

BreakMT написал:

если кому нужно - вот исходники моего текстого квеста на дельфах
http://breakmt.narod.ru/billy_src.zip
может поможет кому

ИМХО писать квесты на дельфи куда лучше, чем писать библиотеку для написания квестов на дельфи. единственное замечание- приложи экзешник, плиззз, а то на 5-й дельфи не компилируется, а 7-я у меня недавно слетела- решила, непонятно с чего, что она пиратская smile

интересно пощупать результат.

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru