इससे पहले कि मैं इनमें से एक पोस्ट करूं, मैं यह देखने के लिए लगभग 5-10 अन्य मंचों को देखता हूं कि क्या मेरे प्रश्न का उत्तर दिया गया है।

ऐसी बहुत सी वेबसाइटें हैं जो बताती हैं कि मेरे कंपाइलर में ब्लिंकिंग सक्षम नहीं है, और मुझे इसे सक्षम करने के लिए पैकेज डाउनलोड करने की आवश्यकता है, या इससे प्रभावित होने वाली कोई चीज़

हालांकि, मैंने जो भी देखा है, उनमें से कोई भी इस बारे में विस्तार से नहीं बताता है कि मुझे ब्लिंकिंग की अनुमति देने के लिए पैकेज कहां और कैसे प्राप्त करना है, या यदि वे करते हैं तो यह मेरे कंपाइलर के पास नहीं है।

तो अगर कोई मेरी सहायता कर सकता है, तो मैं उबंटू पर एक समारोह के साथ ब्लिंकिंग कैसे सक्षम करूं जैसे कि

attron(A_BLINK);

मुझे पता है कि इसी तरह के वाक्यांशगत प्रश्नों को डाउन-वोट मिलेगा। मुझे परवाह नहीं है, मैं सिर्फ यह जानना चाहता हूं कि मेरी समस्या को कैसे ठीक किया जाए।

किसी भी प्रतिक्रिया की वास्तव में सराहना की जाएगी

-संपादित

#include <string.h>
#include <ncurses.h>

int main(void)
{
  char text[] = "Please Blink";
  size_t len = strlen(text);
  int i, row, col;
  initscr();
  getmaxyx(stdscr, row,col);
  keypad(stdscr, TRUE);
  noecho();
  curs_set(0);

  move((row / 2), (col / 2) - (len / 2));

  attron(A_BLINK);
  for(i = 0; i < len; ++i)
  {
    printw("%c", text[i]);
  }

  refresh();
  getch();

  attroff(A_BLINK);

  endwin();

  return 0;
}

-रयान

2
CupcakeLove 25 फरवरी 2020, 20:42
2
अपना प्रश्न संपादित करें और निम्न कार्य करें: 1) पहले 3 अनुच्छेदों को हटा दें जिनका प्रश्न से कोई लेना-देना नहीं है और 2) एक जोड़ें न्यूनतम, प्रतिलिपि प्रस्तुत करने योग्य उदाहरण
 – 
Sean Bright
25 फरवरी 2020, 20:51
2
मुझे लगता है कि आपने इसे देखा है? Ncurses का उपयोग करने से attron(A_BLINK) कुछ नहीं करता
 – 
Fiddling Bits
25 फरवरी 2020, 20:52
मैंने किया। हो सकता है कि मैं उस पोस्ट को समझ नहीं पा रहा हूं, लेकिन इससे मेरी मदद नहीं हुई
 – 
CupcakeLove
25 फरवरी 2020, 21:02
मैंने जो कोड प्रदान किया है वह वह सब है जो आपको चाहिए। उस कोड को किसी भी प्रिंट स्टेटमेंट को ब्लिंक करने की अनुमति देनी चाहिए, लेकिन मेरी समझ में मैं जिस कंपाइलर का उपयोग कर रहा हूं उसमें ब्लिंकिंग इंस्टॉल नहीं है।
 – 
CupcakeLove
25 फरवरी 2020, 21:04
मैं गधा बनने की कोशिश नहीं कर रहा हूं, मुझे नहीं पता कि और क्या चाहिए। मुझे कोई मदद पसंद आएगी, लेकिन मैं वास्तव में नहीं जानता कि आपको और क्या चाहिए।
 – 
CupcakeLove
25 फरवरी 2020, 21:08

2 जवाब

एएनएसआई एस्केप सीक्वेंस

उपयोग के उदाहरण के रूप में:

टर्मिनल प्रकार से:

echo -e "\x1b[5;32;43m"

इसका परिणाम पीले रंग की पृष्ठभूमि पर एक झिलमिलाता हरा अग्रभूमि होता है

फिर टाइप करें:

echo "test"

शब्द परीक्षण को पीले रंग की पृष्ठभूमि पर हरे अक्षरों के रूप में प्रदर्शित करने के लिए

फिर, यदि स्क्रीन सामान्य ऑपरेशन पर वापस नहीं आई है, तो टाइप करें:

echo -e "\1b[0m"

स्क्रीन को सामान्य पर रीसेट करने के लिए

नोट: एक ही ansi एस्केप अनुक्रम printf() फ़ंक्शन का उपयोग करके आउटपुट किया जा सकता है:

printf( "%s\n", "\x1b[5;32;43m" );

और इसी तरह।

0
user3629249 25 फरवरी 2020, 22:53

ब्लिंकिंग आपके टर्मिनल एमुलेटर की एक संपत्ति है। यदि आपका टर्मिनल इसका समर्थन नहीं करता है, तो ऐसा नहीं होगा।

FWIW, एक सादा xterm विंडो मेरे लिए ब्लिंकिंग का समर्थन करती है।

हालांकि, यदि आप टेक्स्ट को ब्लिंक करना चाहते हैं, तो आप टेक्स्ट को समय-समय पर ब्लैंक से ओवरराइट करके इसे मैन्युअल रूप से कर सकते हैं। की तर्ज पर कुछ:

int toggle = 0;
halfdelay(5);

do {
    toggle = !toggle;
    move((row / 2), (col / 2) - (len / 2));
    printw("%*.*s", len, len, toggle ? text : "");
    refresh();
} while (getch() == ERR);

nocbreak();

halfdelay() कॉल के कारण getch() एक सेकंड के 5/10ths के बाद वापस आ जाएगा। यदि उस समय के भीतर कोई कुंजी नहीं दबाई जाती है, तो ERR वापस आ जाता है। nocbreak() कॉल halfdelay() को अक्षम कर देगी।

0
Sean Bright 26 फरवरी 2020, 16:39