AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi String Einfärben - Mehrer Ereignisse...
Thema durchsuchen
Ansicht
Themen-Optionen

String Einfärben - Mehrer Ereignisse...

Ein Thema von sebastian_buege · begonnen am 7. Jun 2007 · letzter Beitrag vom 7. Jun 2007
Antwort Antwort
sebastian_buege

Registriert seit: 5. Mär 2007
58 Beiträge
 
Delphi 6 Personal
 
#1

String Einfärben - Mehrer Ereignisse...

  Alt 7. Jun 2007, 10:55
Hallo der Titel ist nicht ganz eindeutig.
Ich weiß schon wie man Stringgrid einfärbt. Mein Problem : Ich möcht eine Zeiterfassung programmieren und grafisch darstellen Feiertage, urlaub, krank usw.
Feiertage stelle ich durch ein graues kästchen dar. ich werte dazu in einer seperaten funktion eine Datenbank aus. wenn ein feirtag ist, schreibe ich in das entsprechende Feld ein "F". Bei Urlaub ein "U" , Krank ein"K" minusstunden "-",plusstunden ein "+".

nun passiert folgendes ich werte in der ondraw methode des Stringgrids den inhalt aus - bei malse graues rechteck usw.

wenn ich nun an einem fertag überstunden eintragen möchte, sehe ich nur das grüne plus. ist ja logisch wie schaffe ich es das ich beides seheh.

ich hoffe das problem ist verstanden worden...
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#2

Re: String Einfärben - Mehrer Ereignisse...

  Alt 7. Jun 2007, 11:07
Hallo,

füge es doch aneinander an. Ich weiß natürlcih nciht, wie du es im Moment machst, aber mach aus if/else konstrukten eben ein if-if-if und füge die Buchstaben zusammen. Mach dann eben "F+" draus.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
sebastian_buege

Registriert seit: 5. Mär 2007
58 Beiträge
 
Delphi 6 Personal
 
#3

Re: String Einfärben - Mehrer Ereignisse...

  Alt 7. Jun 2007, 11:20
Also meinst du das ich pro Feld nicht nur einen Buchstaben haben sollte sondern ein e Zeichenkette.
das klingt gut allerdings wird es dann sehr verschachtelet und unübersichtlich. Gibt es keine andere möglichkei das feld vielleicht außerhalb der ondrwa methode zu füllen.


oder anders gefragt wie kann ich sonst ein bestimmtes feld ohne in der ondrwamethode den in inhalt abzufragen
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#4

Re: String Einfärben - Mehrer Ereignisse...

  Alt 7. Jun 2007, 11:29
Hallo,

wie wärs denn mit sowas:

Delphi-Quellcode:
type
  TState = (sAtwork, sHolidays, sSpecialHolidays, sIllLeave, sTakenOff, sAdditionalHours); //arbeitet, urlaub, feiertag, krank, überstunde abfeiern, überstunden arbeiten
  TStates = set of TState; //einige der states widersprechen sich, aber das muss man jetzt nicht in der Datenstrukltur berücksichtigen.

var
  states: array of array of TStates;
jetzt musst du nur noch in deiner Datenbankabfrage states initialisieren und belegen, im OnDraw kannst du dann (virtueller Ansatz, n bisschen zumindest) nach Belieben färben und den Text setzen.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
sebastian_buege

Registriert seit: 5. Mär 2007
58 Beiträge
 
Delphi 6 Personal
 
#5

Re: String Einfärben - Mehrer Ereignisse...

  Alt 7. Jun 2007, 11:38
so richtig geht das aber auch nicht ich will ja eine Jahresansicht erstellen.
also wenn ich einen mitarebeiter auswähle , soll er mir für ihn das komplette jahr anzeigen.
nun kann es wie gesagt passieren, das an einem tag mehrere ereignise passieren.
  Mit Zitat antworten Zitat
sebastian_buege

Registriert seit: 5. Mär 2007
58 Beiträge
 
Delphi 6 Personal
 
#6

Re: String Einfärben - Mehrer Ereignisse...

  Alt 7. Jun 2007, 12:14
Moment ich glaube ich habe das noch nicht richtig erkärt. ich schreibe einen Bchstaben hinein, steh dann der wert noch im kästchen.
kann ich nicht mir eine array alegen, wo ich integerwert bspeichere.1 = F, 2= K ... 6=F+ 7=

meinst du das geht
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#7

Re: String Einfärben - Mehrer Ereignisse...

  Alt 7. Jun 2007, 12:21
Habe ich es richtig verstanden, dass es darum geht, die Ereignisse zu erkennen? Oder geht es darum, sie darzustellen.
Also das Erkennen würde ich so machen:
Delphi-Quellcode:

// cellstring ist der Inhalt der Zelle

if pos('+',cellstring) > 0 then // Überstunden
begin
  {...}
end;
if pos('-',cellstring) > 0 then // Minusstunden
begin
  {...}
end;
if pos('F',cellstring) > 0 then // Feiertag
begin
  {...}
end;

// und so weiter...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz