[C] pdcurses

0

chcę pod windowsami zainstalować pdcurses dla Borland Bcc55 i dla Dev-C++

tutaj znajduje się źródło http://sourceforge.net/project/showfiles.php?group_id=30480&package_id=22452&release_id=522576
nie wiem, który plik ściągnąć, ani jak go zainstalować tak, żebym mógł go używać w C:\Borland\BCC55\Bin

tutaj znajduje się DevPak http://kent.dl.sourceforge.net/sourceforge/devpaks/pdcurses-3.2-1mol.DevPak
ale w PackMan.exe dla Dec-C++ nie widzę żadnej opcji install
znalazłem informację, żeby zmienić rozszerzenie .DevPak na .tar.bz2, ale w dalszym ciągu nie wiem, co zrobić z wypakowanymi plikami

pozdrawiam!

0

zainstalowałem sobie pdcurses, z tym że nie z żadnego linka tylko przez uaktualnienia w devie i wszystko chodzi. sprawdź tu:
http://pdcurses.sourceforge.net/

0

już mi się udało zainstalować pdcurses

Napisałem taki prosty kod pod pdcurses, wzorując się na przykładowym kodzie z neta, ale nie wiem, co muszę zrobić, żeby zadziałał mi tak, jakbym chciał, to znaczy:

  1. na początku podświetlił (zmienił # na inny symbol, użył koloru lub coś w tym stylu) znak pierwszy [1,1] w lewym, górnym rogu
  2. strzałkami można się było poruszać i zmieniać wybrany element tablicy
  3. enterem edytować wartość (ale to już później)
#include <curses.h>
#include <math.h>

int main (void)
{
  const ROWS = 7; const COLUMNS = 5;
  WINDOW *okno = NULL;
  WINDOW *okno1 = NULL, *okno2 = NULL, *okno3 = NULL;
  char pressed = '\0';

  char tytul1[COLUMNS];
  char *tytul2 =  "Field [1][1]";
  char *tytul2b = "1234567.1234567";
  char *tytul3 =  "You can use arrows to navigate.";
  char *tytul3a = "If you want you can edit the equact value";
  char *tytul3b = "by pressing Enter. Use Escape to exit.";  
  int i;

  for (i=0;i<COLUMNS;i++) //write string #####
  {  
     tytul1[i] = '#';
  }
  tytul1[COLUMNS]=(char)0; //(char)0 is terminator of string

  initscr (); //BEGIN THE WINDOWS APPLICATION
  noecho ();

  okno = newwin (24, 79, 0, 0); //create windows
  okno1 = subwin (okno, (ROWS+2), (COLUMNS+2), 1, 2); //height, width, vertical position, horizontal position
  okno2 = subwin (okno, 6, 19, 10, 59);
  okno3 = subwin (okno, 7, 45, 16, 33);
  
  wborder (okno, '|', '|', '-', '-', '*', '*', '*', '*'); //create frames
  wborder (okno1, '.', '.', '.', '.', '.', '.', '.', '.');
  wborder (okno2, 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'o');
  wborder (okno3, '*', '*', '*', '*', '*', '*', '*', '*');
  
  for (i=0;i<ROWS;i++) //fill the windows
  {
     mvwaddstr (okno1, (i+1), 1, tytul1);
  }
  mvwaddstr (okno2, 2, 2, tytul2);
  mvwaddstr (okno2, 3, 2, tytul2b);
  mvwaddstr (okno3, 2, 2, tytul3);
  mvwaddstr (okno3, 3, 2, tytul3a);
  mvwaddstr (okno3, 4, 2, tytul3b);  
  wrefresh (okno);
  
  while ((pressed = mvwgetch (okno3, 2, 30)) <= '\040') //wait until user presses the key
    wrefresh (okno3);
    
  endwin (); //END THE WINDOWS APPLICATION

  system("pause");
  return 0;
}

pozdro!

1 użytkowników online, w tym zalogowanych: 0, gości: 1