[ Delphi / Pascal ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 6 May 2007.

Thread Status:
Not open for further replies.
  1. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    Text просто должен везде работать.
    assignfile - это в делфе. если в паскале, то assign.

    А вообще мегачит, работает везде - reset(f, 'file.txt');
    а лучше сразу reset(input, 'file.txt');

    PS мультипостить нехорошо )
     
  2. bogger

    bogger Elder - Старейшина

    Joined:
    20 Apr 2008
    Messages:
    54
    Likes Received:
    19
    Reputations:
    0
    Code:
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.Button1Click(Sender: TObject);
    
    begin
    
    ShellExecute (Form1.Handle, nil, 'http://google.ru', nil, nil, SW_RESTORE);
    
    end;
    
    
    end.
    Как сделать чтоб один раз кликнул а он открылся много раз ? Подскажите плиз и еще как таймером пользоватся чтоб прога сама закрывалась через определенное время.
    з.ы Не судите строго только начинаю изучать)) кста посоветуйте нормальный сайт с уроками и с примерами програм и кодов)))
     
  3. A2GIL

    A2GIL Elder - Старейшина

    Joined:
    31 Aug 2007
    Messages:
    84
    Likes Received:
    59
    Reputations:
    -3
    Создаешь цикл для данной операции:

    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    var
     i:word;
    begin
    for i:=1 to 10 do // Сколько раз надо (в данном случае 10)
    ShellExecute (Form1.Handle, nil, 'http://google.ru', nil, nil, SW_RESTORE);
    
    end;

    Есть несколько способов реализовать это. Ну например так:

    Кидаешь на форму Timer (закладка System). Двойной клик по нему и пишешь
    Code:
    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
     Timer1.Tag:=Timer1.Tag+1;
      if Timer1.Tag>10 then
         Form1.Close;
    end
    В данном случае через 10 сек форма закроется.


    www.sources.ru
    http://delphiworld.narod.ru/
     
  4. bogger

    bogger Elder - Старейшина

    Joined:
    20 Apr 2008
    Messages:
    54
    Likes Received:
    19
    Reputations:
    0
    Спасибо. А вот есть еще progressbar можно сним пример чтоб полоса загрузки двигалась или еще че)
     
    #2724 bogger, 21 Feb 2009
    Last edited: 21 Feb 2009
  5. bogger

    bogger Elder - Старейшина

    Joined:
    20 Apr 2008
    Messages:
    54
    Likes Received:
    19
    Reputations:
    0
    Скажите код чтоб кликнуть по button1 и в директорие(как менять директорию что в Windows файл записавался) где прога создался тхт файл с сообщением внутри? еще как делать перенос на другую строчку ?(допустим:
    Code:
    Writeln('Тртртртр "и вот здесь мне надо на новую строчку" ')
     
    #2725 bogger, 21 Feb 2009
    Last edited: 21 Feb 2009
  6. MaTpOc

    MaTpOc Elder - Старейшина

    Joined:
    5 May 2008
    Messages:
    633
    Likes Received:
    475
    Reputations:
    25
    Посоветуйте учебник по паскалю
     
  7. kevmen

    kevmen Member

    Joined:
    29 Oct 2008
    Messages:
    147
    Likes Received:
    23
    Reputations:
    0
    Здравствуйте,помогите найти ошибку! :)

    Code:
    var
    day:string;
    a:real;
    begin
    case a of
    1,2,3,4,5: day:='Будни' ;
    6: day:='Суббота!';
    7: day:='Вск!';
    end.
    
     
  8. SaiRus

    SaiRus Elder - Старейшина

    Joined:
    24 Nov 2008
    Messages:
    369
    Likes Received:
    41
    Reputations:
    0
    kevmen,
    Code:
    var
    day:string;
    a:[B][COLOR=Red]integer[/COLOR][/B];
    begin
    case a of
    1,2,3,4,5: day:='Будни' ;
    6: day:='Суббота!';
    7: day:='Вск!';
    [B][COLOR=Red]end;
    end.[/COLOR]
    [/B]
     
  9. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    Есть код:
    Code:
    procedure TForm1.Button5Click(Sender: TObject);
    var  SL: TStringList;
    begin
    b:= FindWindow (nil,'Form1');
    If b <> 0 then
    SendMessage(FindWindow(nil,'Form1'),WM_Close,0,0);
     Sl:=TStringList.Create;
     if FileExists('bad.txt') then SL.LoadFromFile('bad.txt');
     SL.Add(PChar('' + memo1.Lines[0] + ''));
     SL.SaveToFile('bad.txt');
     SL.Free;
    memo2.lines.loadfromfile('bad.txt')
    
    else
     Sl:=TStringList.Create;
     if FileExists('good.txt') then SL.LoadFromFile('good.txt');
     SL.Add(PChar('' + memo1.Lines[0] + ''));
     SL.SaveToFile('good.txt');
     SL.Free;
    end;
    Пишед ошибку 'END' expected but 'ELSE' found
    В инете накопал это:
    Но повозившись ниче путного так и не получилось(( Постоянно сталкиваюсь с этой ошибкой. 3 раз уже менял алгоритм программы((((
     
  10. Maxxxtri23

    Maxxxtri23 New Member

    Joined:
    20 Dec 2008
    Messages:
    76
    Likes Received:
    1
    Reputations:
    0
    Попробуй так:
    Code:
    procedure TForm1.Button5Click(Sender: TObject);
    var  SL: TStringList;
    begin
    b:= FindWindow (nil,'Form1');
    If b <> 0 then
    begin
    SendMessage(FindWindow(nil,'Form1'),WM_Close,0,0);  
     Sl:=TStringList.Create;
     if FileExists('bad.txt') then SL.LoadFromFile('bad.txt');
     SL.Add(PChar('' + memo1.Lines[0] + ''));
     SL.SaveToFile('bad.txt');
     SL.Free;
    memo2.lines.loadfromfile('bad.txt')
    end;
    
    else
    begin
     Sl:=TStringList.Create;
     if FileExists('good.txt') then SL.LoadFromFile('good.txt');
     SL.Add(PChar('' + memo1.Lines[0] + ''));
     SL.SaveToFile('good.txt');
     SL.Free;
    end;
    end;
     
    1 person likes this.
  11. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    непашед(((((
     
  12. Maxxxtri23

    Maxxxtri23 New Member

    Joined:
    20 Dec 2008
    Messages:
    76
    Likes Received:
    1
    Reputations:
    0
    Есть у меня такой код:
    Code:
    bot1.Disconnect;
    bot2.Disconnect;
    bot3.Disconnect;
    bot4.Disconnect;
    bot5.Disconnect;
    bot6.Disconnect;
    bot7.Disconnect;
    bot8.Disconnect;
    bot9.Disconnect;
    bot10.Disconnect;
    Как мне сделать так чтоб использовался цикл, вот что-то вроде такого
    Code:
    For i:=1 to 10 do begin
    bot[i].Disconnect;
    end;
     
  13. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    ааааааа

    procedure TForm1.Button5Click(Sender: TObject);
    var SL: TStringList;
    begin
    b:= FindWindow (nil,'Form1');
    If b <> 0 then
    begin
    SendMessage(FindWindow(nil,'Form1'),WM_Close,0,0);
    Sl:=TStringList.Create;
    if FileExists('bad.txt') then SL.LoadFromFile('bad.txt');
    SL.Add(PChar('' + memo1.Lines[0] + ''));
    SL.SaveToFile('bad.txt');
    SL.Free;
    memo2.lines.loadfromfile('bad.txt')
    end

    else
    begin
    Sl:=TStringList.Create;
    if FileExists('good.txt') then SL.LoadFromFile('good.txt');
    SL.Add(PChar('' + memo1.Lines[0] + ''));
    SL.SaveToFile('good.txt');
    SL.Free;
    end;
    end;


    Так работает СПС!
     
  14. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    Ещё вот такой вопрос
    Есть кусок кода ну например
    procedure TForm1.Button3Click(Sender: TObject);
    begin
    WinExec(PChar('ping.exe ' + memo1.Lines[0] + ''), sw_show);
    +++++++
    showmessage ('ааааааа!!!')
    end;

    Нужно где я поставил +++++ сделать 30 секундное ожидание Тоесть нажал на кнопку пропинговался хост Через 30 сек появилось сообщение.....

    UPD: Через таймер не предлагать!!!!
     
  15. search74

    search74 Member

    Joined:
    17 Jun 2008
    Messages:
    20
    Likes Received:
    24
    Reputations:
    0
    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    var
       f: TextFile;
       fName: String[80];
       begin
     
       fName := '1.txt;
       AssignFile(f, fName);
       Rewrite(f); 
       writeln(f, 'Твое сообщение');
       CloseFile(f);
    
       MessageDlg('сообщение записанов в файл 1.txt',mtInformation,[mbOk],0);
    end;
     
    #2735 search74, 22 Feb 2009
    Last edited: 22 Feb 2009
  16. search74

    search74 Member

    Joined:
    17 Jun 2008
    Messages:
    20
    Likes Received:
    24
    Reputations:
    0
    Code:
    Writeln('Тртртртр ');
    Writeln('и вот здесь мне надо на новую строчку');
     
    1 person likes this.
  17. W!z@rD

    W!z@rD Борец за русский язык

    Joined:
    12 Feb 2006
    Messages:
    973
    Likes Received:
    290
    Reputations:
    43
    procedure TForm1.Button3Click(Sender: TObject);
    begin
    WinExec(PChar('ping.exe ' + memo1.Lines[0] + ''), sw_show);
    Sleep(сколько_ждать);
    showmessage ('ааааааа!!!')
    end;
     
    1 person likes this.
  18. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    А нельзя ли сделать так чтоб на время выполнения команды прога не зависала?
     
  19. Maxxxtri23

    Maxxxtri23 New Member

    Joined:
    20 Dec 2008
    Messages:
    76
    Likes Received:
    1
    Reputations:
    0
    Вот эту процедурку пропиши:
    Code:
    procedure sleep(ms:cardinal);
    var
      tc:cardinal;
    begin
      tc:=GetTickCount;
      repeat
        Application.ProcessMessages;
      until GetTickCount-tc > ms;
    end;
     
  20. Maxxxtri23

    Maxxxtri23 New Member

    Joined:
    20 Dec 2008
    Messages:
    76
    Likes Received:
    1
    Reputations:
    0
    Собсно АП, или никто не знает как это сделать? =(

    Есть у меня такой код:
    Code:
    bot1.Disconnect;
    bot2.Disconnect;
    bot3.Disconnect;
    bot4.Disconnect;
    bot5.Disconnect;
    bot6.Disconnect;
    bot7.Disconnect;
    bot8.Disconnect;
    bot9.Disconnect;
    bot10.Disconnect;
    Как мне сделать так чтоб использовался цикл, вот что-то вроде такого
    Code:
    For i:=1 to 10 do begin
    bot[i].Disconnect;
    end;
     
Thread Status:
Not open for further replies.