Εμφάνιση 1-6 από 6
  1. #1
    Εγγραφή
    31-03-2009
    Ηλικία
    38
    Μηνύματα
    169
    Downloads
    0
    Uploads
    0
    εχω τον παρακατω κωδικα με τον οποιο προσπαθω να διαγραψω τα στοιχεία που τσεκαρω σε ενα CheckListBox, το προβλημα μου ειναι οτι διαγραφει οτι να ναι και οχι τα επιλιγμένα , καμία προταση???


    int i;


    CheckListBox1->Items->BeginUpdate();
    for ( i=0;i<CheckListBox1->Items->Count-1;i++)


    {

    if ((CheckListBox1->Checked[i])==true)
    {
    CheckListBox1 ->Items->Delete(i);
    }

    }


    CheckListBox1->Items->EndUpdate();

  2. #2
    Εγγραφή
    19-03-2009
    Περιοχή
    ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ
    Ηλικία
    48
    Μηνύματα
    288
    Downloads
    0
    Uploads
    0
    Κώδικας:
    CheckListBox1->Items->BeginUpdate();
    for ( i=0;i<CheckListBox1->Items->Count-1;i++)
    
    
    {
    
    if ((CheckListBox1->Checked[i])==true)
    {
    CheckListBox1 ->Items->Delete(i);
    i--;//δεν ξέρω αν αυτό θα σου κάνει αυτό που θες
    }
    
    }
    
    
    CheckListBox1->Items->EndUpdate();

  3. #3
    Εγγραφή
    01-06-2008
    Ηλικία
    52
    Μηνύματα
    1.404
    Downloads
    2
    Uploads
    0
    Ταχύτητα
    8192/512
    ISP
    Forthnet
    DSLAM
    Forthnet - Ν. ΣΜΥΡΝΗ
    SNR / Attn
    8(dB) / 30(dB)
    Το πρόβλημα είναι ότι διαγράφοντας ένα item από το listbox αλλάζει το index σε όλα τα επόμενα. Μια πρόχειρη λύση είναι να κάνεις το loop ανάποδα, από το Count έως το 0. Δηλαδή:

    Κώδικας:
    for (i = CheckListBox1->Items->Count-1; i >= 0; --i)
    ...
    Α! και πρόσεξε το Count-1. Στον κώδικά σου έχεις i < Count - 1. Ή πρέπει να βάλεις <= ή πρέπει να αφαιρέσεις το -1 (εκτός αν δεν θέλεις να χειριστείς το τελευταίο στοιχείο επίτηδες)

  4. #4
    Εγγραφή
    31-03-2009
    Ηλικία
    38
    Μηνύματα
    169
    Downloads
    0
    Uploads
    0
    Παράθεση Αρχικό μήνυμα από MichaelSE Εμφάνιση μηνυμάτων
    Το πρόβλημα είναι ότι διαγράφοντας ένα item από το listbox αλλάζει το index σε όλα τα επόμενα. Μια πρόχειρη λύση είναι να κάνεις το loop ανάποδα, από το Count έως το 0. Δηλαδή:

    Κώδικας:
    for (i = CheckListBox1->Items->Count-1; i >= 0; --i)
    ...
    Α! και πρόσεξε το Count-1. Στον κώδικά σου έχεις i < Count - 1. Ή πρέπει να βάλεις <= ή πρέπει να αφαιρέσεις το -1 (εκτός αν δεν θέλεις να χειριστείς το τελευταίο στοιχείο επίτηδες)
    το ειχα δοκιμασει και αναποδα αλλα και παλι δεν δουλευει.... ευχαριστω παντως γιατι μου ειπες τουλαχιστον τι παει στραβα γιατι δεν μπορουσα να καταλαβω τι γινοταν λαθος μου φαινοταν σωστος ο κωδικας......
    Τελευταία επεξεργασία από το μέλος KinigosPsixon : 05-12-09 στις 12:48.

  5. #5
    Εγγραφή
    17-05-2005
    Περιοχή
    Κυψέλη
    Ηλικία
    55
    Μηνύματα
    642
    Downloads
    3
    Uploads
    0
    Ταχύτητα
    10240/1024
    ISP
    Forthnet
    Router
    Speedtouch 780(i)WL
    SNR / Attn
    11(dB) / 33(dB)
    Κάντο με while loop και το i να το αυξάνεις μόνο όταν ΔΕΝ σβήνεις κάποιο item.

  6. #6
    Εγγραφή
    31-03-2009
    Ηλικία
    38
    Μηνύματα
    169
    Downloads
    0
    Uploads
    0
    Παράθεση Αρχικό μήνυμα από pstr Εμφάνιση μηνυμάτων
    Κάντο με while loop και το i να το αυξάνεις μόνο όταν ΔΕΝ σβήνεις κάποιο item.
    Σε ευχαριστω πολυ φιλε, τελικα το εκανα ετσι οπως μου ειπες και δουλευει μια χαρα!!!

Παρόμοια Θέματα

  1. ΔΙΑΓΡΑΦΗ ΑΝΑΖΗΤΗΣΕΩΝ ΑΠΟ GOOGLE
    Από Mahaneva στο φόρουμ Internet, web surfing και online υπηρεσίες
    Μηνύματα: 2
    Τελευταίο Μήνυμα: 23-06-09, 13:03
  2. Jetspeed 520+ reset στοιχείων όταν βγαίνει από το ρεύμα
    Από xrokos στο φόρουμ ADSL & Broadband Hardware, routers και modems...
    Μηνύματα: 6
    Τελευταίο Μήνυμα: 06-06-08, 20:45
  3. Διαγραφή από Skype Pro
    Από Κώστας Κορ στο φόρουμ Skype, Betamax, Sip Providers
    Μηνύματα: 2
    Τελευταίο Μήνυμα: 24-02-08, 02:51
  4. Διαγραφη απο 4ΝΕΤ
    Από Nik_Gr στο φόρουμ Nova
    Μηνύματα: 22
    Τελευταίο Μήνυμα: 09-12-06, 13:26
  5. Εμφάνιση στοιχείων απο φόρμα site σε mail με script php
    Από Tommy_Angelo στο φόρουμ Web authoring, development & web design
    Μηνύματα: 1
    Τελευταίο Μήνυμα: 16-06-06, 05:41

Bookmarks

Bookmarks

Δικαιώματα - Επιλογές

  • Δεν μπορείτε να δημοσιεύσετε νέα θέματα
  • Δεν μπορείτε να δημοσιεύσετε νέα μηνύματα
  • Δεν μπορείτε να αναρτήσετε συνημμένα
  • Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας
  •  
  • Τα BB code είναι σε λειτουργία
  • Τα Smilies είναι σε λειτουργία
  • Το [IMG] είναι σε λειτουργία
  • Το [VIDEO] είναι σε λειτουργία
  • Το HTML είναι εκτός λειτουργίας