oranje Δημοσ. 9 Νοεμβρίου 2007 Δημοσ. 9 Νοεμβρίου 2007 καλησπερα παιδια.θελω να φτιαξω ενα απλο προγραμματακι με μενου ωστε να εκτυπωνει απλα μνμτακια.ελα μου ντε που ειμαι ασχετος και το google δεν βοηθαει πολυ.αν εχει καποιος κατι ετοιμο θα ηθελα να με βοηθησει.προτιμω pascal αν ειναι δυνατο γιατι βγαινει πιο ευκολα το exe.στις αλλες γλωσσες οταν εφτιαχνα κατι παταγα στο exe αλλα εκλεινε ακαριαια.ευχαριστω για την κατανοηση και για την οποια βοηθεια προκαταβολικα!
Bspus Δημοσ. 9 Νοεμβρίου 2007 Δημοσ. 9 Νοεμβρίου 2007 Να τα εκτυπωνει που? Στην οθονη? Το μενου να ειναι γραφικο η text? Υποθετω τεχτ, διαφορετικα καλυτερα ασε την pascal και c και πιασε μια πιο καινουρια γλωσσα (εκτος αν εχει ορεξη για ΠΟΛΥ διαβασμα) Οτι φτιαχνεις να το τελειωνεις με readln ωστε να μην κλεινει ακαριαια αλλα να περιμενει να πατησεις enter. Εναλλακτικα, ανοιγεις γραμμη εντολων πρωτα και απο εκει τρεχεις το exe. Τι ακριβως εχεις στο μυαλο σου? Αν αυτο που θες ειναι πολυ απλο, μπορει να γινει και με batch file ακομα. Επισης αν σε ενδιαφερει να τρεχει παντου και ειναι απλο, μπορεις να το κανεις και σε javascript και να τρεχει απο browser
oranje Δημοσ. 9 Νοεμβρίου 2007 Μέλος Δημοσ. 9 Νοεμβρίου 2007 ενα πολυ απλο προγραμμα να εκτυπωνει ενα μενου στην οθονη 3 επιλογες πχ κ με την αντιστοιχη επιλογη να εμφανιζειι ενα μνμ.δεν ειναι εργασια.δεν θελω κατι συνθετο.αν εχετε κατι ετοιμο κ μικρο να κανω τις αλλαγες.πολυ απλα πραγματα
oranje Δημοσ. 10 Νοεμβρίου 2007 Μέλος Δημοσ. 10 Νοεμβρίου 2007 oti exete.να γινετε εχε κ να μπορει να το τρεξει καποιος αλλος ασχετος με προγραμματισμο ας πουμε.απλα αναφερα τις αλλες γλωσσες γιατι αυτες εχω εγκατεστημενες τωρα.thanx!
Bspus Δημοσ. 10 Νοεμβρίου 2007 Δημοσ. 10 Νοεμβρίου 2007 Οπως ειπα, μπορει να γινει και με batch file. Αν το θες οπωςδηποτε σε exe υπαρχει το quick batch file compiler που τα κανει exe (γενικωε ενα μινι περιβαλλον για τη συγγραφη Batch files) και πολλα αλλα δωρεαν προγραμματακια που κανουν απο batch exe. Να ενα http://www.download.com/Bat-To-Exe-Converter/3000-2069_4-10715331.html?tag=pdp_prod Οριστε και ενα παραδειγμα μενου σε batch file: > @echo off title A simple Menu setlocal :start cls echo This is a simple menu! echo Make your choice echo. echo The choices are: echo Press 1 for THIS echo Press 2 for THAT echo Press 3 for THE OTHER set /p answer= if %answer% equ 1 (goto answer1) if %answer% equ 2 (goto answer2) if %answer% equ 3 (goto answer3) goto wrong :answer1 cls echo You pressed 1. echo I will display THIS message goto end :answer2 cls echo You pressed 2. echo I will display THAT message goto end :answer3 cls echo You pressed 3. echo I will display THE OTHER message goto end :wrong cls echo That was not a good answer! echo Press 1 to try again or any other key to exit set /p answer= if %answer% equ 1 (goto start) exit :end echo. echo. echo End of Program. Press any key to exit pause > nul Copy paste σε ενα text file και το σωζεις με extension bat. Αν κατεβασεις και το compiler που εδειξα, ειναι πανευκολο να φτιαξεις το exe. Θα στο εδειχνα σε pascal αλλα βαριομουν να την ξεθαψω
alkisg Δημοσ. 10 Νοεμβρίου 2007 Δημοσ. 10 Νοεμβρίου 2007 Σε Pascal (χωρίς compile, μπορεί να έχει κανένα λαθάκι): > Program test; Var choice: Integer; begin Writeln('1. Option one'); Writeln('2. Option two'); Writeln('3. Option three'); Write('Enter choice: '); Readln(choice); Case choice of 1: Writeln('You pressed 1.'); 2: Writeln('You pressed 2.'); 3: begin Writeln('You pressed 3.'); Writeln('Have a nice day.'); end; end; end.
oranje Δημοσ. 10 Νοεμβρίου 2007 Μέλος Δημοσ. 10 Νοεμβρίου 2007 παιδια σας ευχαριστω παρα πολυ για την αμεση εξυπηρετηση.θελω να παω για δικτυα κ εχω στα τει εν ασωρο προγραμματισμους,ελεος! ευχαριστω παρα πολυ και παλι! sorry an se πρηζω αλλα παιζει να βαλεις μια επαναληπτικη διαδικασια να μην τερματιζει στν πρωτη πρωτη επιλογη στο bat .δεν θα σε ξαναενοχλησω.loooooooooooool!
Directx Δημοσ. 10 Νοεμβρίου 2007 Δημοσ. 10 Νοεμβρίου 2007 Ο παρακάτω κώδικας σχεδιάζει στην θέση X,Y της οθόνης ένα ορθογώνιο μενού το οποίο περιλαμβάνει όλα τα διαθέσιμα Items που έχει ορίσει ο χρήστης. Η μετακίνηση μεταξύ των Items γίνεται με την χρήση των πλήκτρων Πάνω-Κάτω (Τοξάκια) ενώ η επιλογή του Item γίνεται πατώντας το πλήκτρο Enter (η τιμή που επιστρέφει αφορά το item με βάση την αρίθμηση των C array -δηλαδή ξεκινάμε από το μηδέν ως N-1). Το επιλεγμένο Item γίνεται αυτόματα Invert. Η ρουτίνα δοκιμάζει να προσαρμόσει αυτόματα το πλάτος και ύψος του μενού με βάση τον αριθμό και μέγεθος των Items. Η ρουτίνα θα σας θυμίσει DOS λογισμικά, επίσης είναι ενδεικτική οπότε μπορεί να περιλαμβάνει bugs ειδικά αν τοποθετήσετε το μενού κοντά στα όρια της οθόνης (δεν συνιστάται). Ακολουθεί ένα snapshot: Ακολουθεί ο κώδικας, θυμηθείτε πως είναι γραμμένος σε CodeGear Turbo C και χρησιμοποιεί την Borland βιβλιοθήκη “conio.h” η οποία υλοποιεί τις ρουτίνες χρώματος, σχεδίασης στην οθόνη, καθαρισμού, απόκρυψης κέρσορα (cprintf, textcolor, textbackground, gotoxy, _setcursortype κτλ) οπότε δεν είναι σίγουρο πως μπορεί να γίνει compile από κάθε άλλο διαθέσιμο C compiler πέραν αυτών της CodeGear/Borland (πχ. C/C++ Builder, C++ Borland Compiler, Turbo C++ κτλ.) > /*-TTY MENU IN BORLAND C BY DIRECTX------------------------------------------*/ #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string.h> #ifdef __BORLANDC__ #pragma hdrstop #endif /*---------------------------------------------------------------------------*/ int _DrawMenu(int X,int Y,char* pszItem[],int ItemNum); /*---------------------------------------------------------------------------*/ #ifdef __BORLANDC__ #pragma argsused #endif int main(int argc, char* argv[]) { char *pszItem[] = { "ITEM NUMBER 1", "ITEM NUMBER 2", "ITEM NUMBER 3", "ITEM NUMBER 4", "ITEM NUMBER 5", "ITEM NUMBER 6", "ITEM NUMBER 7", "ITEM NUMBER 8", "ITEM NUMBER 9", "ITEM NUMBER 10" }; printf("\n\nSELECTED ITEM: %d\n",_DrawMenu(1,1,pszItem,9)); getchar(); return 0; } /*---------------------------------------------------------------------------*/ int _DrawMenu(int X,int Y,char* pszItem[],int ItemNum) { /* * Draw simple menu with pszItem items. */ int nMaxWidth = 0, nItemIdx, nHorLine, _Y = Y+1, nCloseMenu = 0, nActiveItem = 0; /* * Find the largest (wider) Item of the pszItem array * and store it on nMaxWidth. */ for(nItemIdx=0;nItemIdx<=ItemNum;nItemIdx++) if(strlen(pszItem[nItemIdx])>nMaxWidth) nMaxWidth = strlen(pszItem[nItemIdx]); /* * Clear screen and hide cursor */ clrscr(); _setcursortype(_NOCURSOR); /* * Draw Horizontal Menu Box lines */ for(nHorLine=0;nHorLine<=nMaxWidth+1;nHorLine++) { gotoxy(nHorLine+X,Y); putchar((!nHorLine || nHorLine==nMaxWidth+1)?'+':'-'); gotoxy(nHorLine+X,Y+ItemNum+2); putchar((!nHorLine || nHorLine==nMaxWidth+1)?'+':'-'); } while(!nCloseMenu) { static int nKey = 0; /* * Draw menu items, vertical Menu Box lines and highlight * selected item. */ for(nItemIdx=0;nItemIdx<=ItemNum;nItemIdx++) { gotoxy(X,_Y+nItemIdx); putchar('|'); gotoxy(X+nMaxWidth+1,_Y+nItemIdx); putchar('|'); gotoxy(X+1,_Y+nItemIdx); textcolor((nItemIdx==nActiveItem)?BLACK:LIGHTGRAY); textbackground((nItemIdx==nActiveItem)?LIGHTGRAY:BLACK); cprintf("%s",pszItem[nItemIdx]); } /* * Read keyboard input */ if(!(nKey = getch())) switch(getch()) { case 0x48: /* Up */ if(nActiveItem--<=0) nActiveItem = ItemNum; break; case 0x50: /* Down */ if(nActiveItem++>=ItemNum) nActiveItem = 0; break; default: break; } else if(nKey==0xD) /* Enter */ nCloseMenu = 1; } /* * Return selected item index. */ return nActiveItem; }
Bspus Δημοσ. 10 Νοεμβρίου 2007 Δημοσ. 10 Νοεμβρίου 2007 παιδια σας ευχαριστω παρα πολυ για την αμεση εξυπηρετηση.θελω να παω για δικτυα κ εχω στα τει εν ασωρο προγραμματισμους,ελεος!ευχαριστω παρα πολυ και παλι! sorry an se πρηζω αλλα παιζει να βαλεις μια επαναληπτικη διαδικασια να μην τερματιζει στν πρωτη πρωτη επιλογη στο bat .δεν θα σε ξαναενοχλησω.loooooooooooool! > @echo off title A simple Menu setlocal :start cls echo This is a simple menu! echo Make your choice echo. echo The choices are: echo Press 1 for THIS echo Press 2 for THAT echo Press 3 for THE OTHER echo Press 4 to exit set /p answer= if %answer% equ 1 (goto answer1) if %answer% equ 2 (goto answer2) if %answer% equ 3 (goto answer3) if %answer% equ 4 (exit) goto wrong :answer1 cls echo You pressed 1. echo I will display THIS message goto back :answer2 cls echo You pressed 2. echo I will display THAT message goto back :answer3 cls echo You pressed 3. echo I will display THE OTHER message goto back :wrong cls echo That was not a good answer! goto back :back echo. echo Press any key to go back to the main menu pause > nul goto start Παντως σοβαρα τωρα, δεν νομιζω οτι αυτο σε ωφελει. Αν εχεις να μαθεις pascal η οποιαδηποτε αλλη γλωσσα για το TEI κατσε και μαθε αυτο που σου ζητανε. Batch Files δεν νομιζω να σου ζητησει ποτε κανεις να φτιαξεις ουτε σε βοηθανε στο να μαθεις να φτιαχνεις σωστα προγραμματα (μαλλον το αντιθετο)
oranje Δημοσ. 10 Νοεμβρίου 2007 Μέλος Δημοσ. 10 Νοεμβρίου 2007 na s pw την αληθεια προγραμμα για την κοπελα μου προσπαθω να φτιαξω γιατι ειναι προγραμματιστρια.σε υπερευχαριστω!
oranje Δημοσ. 12 Νοεμβρίου 2007 Μέλος Δημοσ. 12 Νοεμβρίου 2007 αλλο το ενα αλλο το αλλο.το Mpi einai ergasia dikia m
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.