Originariamente inviato da grafica.web
Salve a tutti, sono un programmatore in erba e vorrei capire meglio come funziona delphi..
insomma, qualcosina sono riuscito a fare, ma alcune cose mi sembrano cosi complicate...
Si tratta di non avere troppa fretta di fare, soprattutto agli inizi.
Originariamente inviato da grafica.web
Per es. non so come gestire una variabile, o meglio, ho tre edit con all'interno l'anno, il mese e il giorno e vorrei fare in modo che al cliccare di un bottone questi tre valori contenuti nelle 3 edit diventino un'unica veriabile.. quindi una data vera è propria (Es: 2002/05/02)
Per fare ciò che chiedi, potresti usare la funzione EncodeDate, la quale ti permette di riassemblare informazioni come giorno, mese e anno all'interno di un dato di tipo TDateTime, che è il tipo in Delphi adatto a contenere date e ore. Osserva l'esempio seguente:
codice:
procedure TDemoForm.ConvertButtonClick(Sender: TObject);
var
D, M, Y: Word;
MyDate: TDateTime;
begin
D := StrToInt(DayEdit.Text);
M := StrToInt(MonthEdit.Text);
Y := StrToInt(YearEdit.Text);
MyDate := EncodeDate(Y, M, D);
DateLabel.Caption := DateToStr(MyDate);
end;
Il linguaggio Delphi è estremamente "tipato": questo significa che spesso, dovendo maneggiare dati di tipo diverso, è necessaria una conversione esplicita, poichè non è possibile usare un tipo di dato al posto di un altro senza aver prima effettuata l'adeguata conversione.
Nell'esempio sopra, DayEdit, MonthEdit e YearEdit sono controlli Edit in cui inserire rispettivamente giorno, mese e anno; MyDate è una variabile che contiene il valore convertito in data nativa riassemblando le varie componenti, mentre DateLabel visualizzerà sottoforma di stringa il valore convertito per verifica alla pressione del pulsante ConvertButton.
La funzione EncodeDate accetta come parametro le componenti della data, che però sono valori Word; siccome le caselle di testo forniscono stringhe, è necessario convertire le componenti della data in valori numerici interi usando StrToInt.
Una volta convertiti, questi valori vengono appunto riuniti usando EncodeDate che è una funzione in grado di restituire il valore corrispondente a giorno, mese e anno specificati nel tipo TDateTime specifico; l'istruzione successiva converte il valore TDateTime in una stringa per poterla visualizzare all'interno di un'etichetta.
Originariamente inviato da grafica.web
E poi non so come fare per fornire al mio programma un path relativo, ho meglio vorrei che al cliccare di un bottone io possa sceglire nelle risorse del mio PC una cartella di partenza su cui fare delle ricerche da essa alle sue sottocartelle...
Definisci meglio cosa intendi per "fornire un path relativo".
Per selezionare una cartella, puoi usare la funzione SelectDirectory, accessibile aggiungendo la unit FileCtrl alla clausola uses. Per le informazioni su questa funzione ti rimando alla Guida in linea di Delphi, uno strumento che è indispensabile imparare ad utilizzare, secondo me, poichè fornisce immediatamente molte delle risposte alle domande che vengono poi inesorabilmente fatte qui. Per ottenere informazioni su una funzione specifica, su un tipo di dati, su una proprietà o parole chiave e così via, basta posizionare il cursore sull'identificatore e premere F1.
Per il momento è tutto.
Buona programmazione con Delphi!